我有两个数组I
和X
。我想执行一个操作,基本上是从I
中获取索引,并使用X
中的值。例如,I[0]=[0,1]
,我想计算X[0]
和X[1]
,然后计算X[0]-X[1]
,并追加到一个新数组T
中。类似地,对于I[1]=[1,2]
,我想计算X[1]
和X[2]
,然后计算X[1]-X[2]
,并将其追加到T
。
import numpy as np
I=np.array([[0,1],[1,2]])
X=np.array([10,5,3])
预期输出为
T=array([[X[0]-X[1]],[X[1]-X[2]]])
2条答案
按热度按时间eivgtgni1#
最基本的方法是将嵌套索引与
np.append()
函数一起使用。其工作原理如下:
其中,
X[I[0][0]]
表示提取I[0][0]
的值,并将其用作数组X的索引。您也可以实作循环来执行此动作:
如果你觉得这个答案有帮助,请接受我的答案。谢谢。
bvjxkvbb2#
你可以使用整数数组索引来实现这一点。对于大型数组,使用for循环(如当前接受的答案)比使用矢量化操作要慢得多。