独立地对 2D numpy 数组列进行矢量化排序
Vectorized sort of 2D numpy array columns independently
必须有一种简单的矢量化方法来独立地对二维 numpy 数组中的所有列进行排序,而无需使用 for 循环。
input_arr = np.array([[6,4],[3,1],[2,5]])
out_arr =np.empty_like(input_arr)
for c,column in enumerate(input_arr.T):
out_arr[:,c] = np.sort(column)
Expected results:
unsorted:
[[6 4]
[3 1]
[2 5]]
columns_sorted:
[[2 1]
[3 4]
[6 5]]
你能帮帮我吗?
np.sort(np.array([[6,4],[3,1],[2,5]]).T).T
编辑:
更好更简单的解决方案,感谢 @user3483203
np.sort(np.sort(np.array([[6,4],[3,1],[2,5]]), axis=0)
必须有一种简单的矢量化方法来独立地对二维 numpy 数组中的所有列进行排序,而无需使用 for 循环。
input_arr = np.array([[6,4],[3,1],[2,5]])
out_arr =np.empty_like(input_arr)
for c,column in enumerate(input_arr.T):
out_arr[:,c] = np.sort(column)
Expected results:
unsorted:
[[6 4]
[3 1]
[2 5]]
columns_sorted:
[[2 1]
[3 4]
[6 5]]
你能帮帮我吗?
np.sort(np.array([[6,4],[3,1],[2,5]]).T).T
编辑:
更好更简单的解决方案,感谢 @user3483203
np.sort(np.sort(np.array([[6,4],[3,1],[2,5]]), axis=0)