2
我想按numpy排序數組中的第一行。按行排序數組
例如:
import numpy as np
test = np.array([[1334.71601720318, 930.9757468052002, 1018.7038817663818],
[0.0, 1.0, 2.0],
[ np.array([[ 667, 1393],
[1961, 474]]),
np.array([[ 673, 1389],
[ 847, 1280]]),
np.array([[ 726, 1077],
[ 898, 961]])]], dtype=object)
我想行進行排序:
[1334.71601720318, 930.9757468052002, 1018.7038817663818]
獲得:
np.array([[930.9757468052002, 1018.7038817663818, 1334.71601720318],
[1.0, 2.0 ,0.0],
[ np.array([[ 673, 1389],
[ 847, 1280]]),
np.array([[ 726, 1077],
[ 898, 961]])],
np.array([[ 667, 1393],
[1961, 474]])], dtype=object)
----編輯LATER ----
我嘗試過:sorted(test,key = lambda row:row [1]) 但是我收到了一條錯誤消息:「具有多個元素的數組的真值是不明確的。使用a.any()或a.all()」
完美;。!)感謝您的幫助 – user3601754