仍在学习有关如何操作numpy数组的知识,我们将不胜感激。
这是布局:
col1 coln index cid d1 d2 d3 d4
some vals 0 1 some values
1 2
2 0
3 1
4 3
5 1
6 0
7 2
我想找到与每个cid相关联的最低索引,并将其存储在列表中。例如,对于cid 1,它将为0;对于cid 0,它将为2;对于cid,它将为1,依此类推。
做这个的最好方式是什么?
提前致谢!
您可以使用类似以下内容的方式在numpy中进行操作。遍历每个唯一的CID并获得True
列表理解中第一个的索引。np.unique()将为您提供所有CID值。np.argmax将索引返回到数组中的最大值。如果有多个相同的对象,则返回第一个匹配项。因此,它将True
为每个比较返回第一个索引。
import numpy as np
cid = np.array([1,2,0,1,3,1,0,2])
first_idx = [np.argmax(cid == x) for x in np.unique(cid)]
print(first_idx)
结果:[2,0,1,4]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句