1. 程式人生 > >numpy中二維陣列按照某列、某行排序

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()]