numpy中二维数组按照某列、某行排序

如何根据二维数组中的某一行或者某一列排序?假设data是一个numpy.array类型的二维数组,可以利用numpy中的argsort函数进行实现,代码实例如下:

data = data[data[:,2].argsort()] #按照第3列对行排序

注意:argsort返回的只是排好序后的行索引,不会改变原数组。


按照某行进行排序,可以利用转置操作,代码如下所示:

data = data.T(data.T[:,2].argsort()).T # 按照第3行对列进行排序


也可以直接按行进行排序,代码如下:

data = data[:,data[2].argsort()]

 

posted @ 2021-07-13 17:18  小筱痕  阅读(1825)  评论(0编辑  收藏  举报