源码

首页 » 归档 » 源码 » python – 根据另一个数组中的数据对numpy数…

python – 根据另一个数组中的数据对numpy数…


我有两组数组数据和结果.结果包含数据中的相同元素,但具有额外的列且未按顺序排列.我想重新排列结果数组,使其与数据中的行的顺序相同,同时在执行排序时将关联的值与行的其余部分一起放入最后一列.

data = np.array([[0,1,0,0],[1,0,0,0],[0,1,1,0],[0,1,0,1]])
result = np.array([[0,1,1,0,1],[1,0,0,0,0],[0,1,0,0,1],[0,1,0,1,0]])

# this is what the final sorted array should look like:
'''
array([[0, 1, 0, 0, 1],
       [1, 0, 0, 0, 0],
       [0, 1, 1, 0, 1],
       [0, 1, 0, 1, 0]])
 '''

我已经尝试做argsort以便将数据转换为排序顺序然后将其应用于结果但是argsort似乎根据每个元素对数组的顺序进行排序,而我希望排序处理数据的每一行[:, 4]作为一个整体.

ind = np.argsort(data)
indind =np.argsort(ind)
ind
array([[0, 2, 3, 1],
   [1, 2, 3, 0],
   [0, 3, 1, 2],
   [0, 2, 1, 3]])

按行排序的好方法是什么?

(0)

本文由 投稿者 创作,文章地址:https://blog.isoyu.com/archives/python-genjulingyigeshuzuzhongdeshujuduinumpyshu.html
采用知识共享署名4.0 国际许可协议进行许可。除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为:11月 11, 2019 at 01:29 下午

热评文章