假设我有一个包含[x,y,z,intensity]:
数组的numpy数组EndArray=np.array([np.array([1,2,3,1.63]),np.array([1,2,2,.32])])
如果在重复发生时对强度值求和,我怎么可能将数组减少到唯一点?
所以上面的最终结果如下:
UPDATE your_table_name
SET `Old Exp Date` = `Expired Date`,
`Expired Date` = "$api_value";
我正在考虑在x,y,z上使用numpy.unique,但这会给我整数唯一性计数,而不考虑强度列。
我很抱歉这里缺少代码,但老实说,我甚至不知道从np.unique以外的地方开始
答案 0 :(得分:3)
作为NumPy标记/处理NumPy数组,我们可以使用np.unique
的新功能接受axis
参数来处理2D
数组作为组,以便为我们提供预期的输出,例如所以 -
In [51]: unq, tags = np.unique(MyArray[:,:3],axis=0, return_inverse=1)
In [52]: np.c_[unq,np.bincount(tags, MyArray[:,3])]
Out[52]:
array([[ 1. , 2. , 2. , 0.32],
[ 1. , 2. , 3. , 1.63]])