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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM