我有两个数组。一个是"A",长度任意(假设起始值为1000),每个点都拥有一个n维向量,其中每个条目表示一个标量。另一个是"B",有n个条目,每个条目都持有一个3维向量。如何进行标量乘法,使得结果是一个"C"数组,其中每个条目都是n个标量和n个3维向量的乘积?
以4-D为例:
以4-D为例:
a=[[1,2,3,4],[5,6,7,8],....]
b=[[1,0,0],[0,1,0],[0,0,1],[1,1,1]]
以及一个结果
c=[[1*[1,0,0],2*[0,1,0],3*[0,0,1],4*[1,1,1]] , [5*[1,0,0],...],...]
实现应该使用numpy而不是太多的for循环,因为预计会有超过1000个条目。在我们的情况下,n预计为7。
numpy.array
和list
的区别,它们是不同的数据结构。例如,np.array([0,1,0]) * 2
的结果为np.array([0,2,0])
,而[0,1,0] * 2
的结果为[0,1,0,0,1,0]
。 - Akavall