1. 程式人生 > >python多維list按照某行或者某列排序

python多維list按照某行或者某列排序

import numpy as np

# 隨機生成資料
data = np.random.rand(5, 3)
print(data)

# 取得第一列排序索引
index = np.argsort(data, 0)[:, 1]
print(index)

# 根據索引取資料
print(data[index, :])

[[0.58094702 0.64836198 0.38836734]
 [0.27973569 0.60531745 0.6331108 ]
 [0.03099137 0.03138515 0.63838206]
 [0.126183   0.95057383 0.81691109]
 [0.63311877 0.60085732 0.72634485]]

[2 4 1 0 3]

[[0.03099137 0.03138515 0.63838206]
 [0.63311877 0.60085732 0.72634485]
 [0.27973569 0.60531745 0.6331108 ]
 [0.58094702 0.64836198 0.38836734]
 [0.126183   0.95057383 0.81691109]]