所以我有一个二维数组,其中第一列由-1.0
和1.0
之间的浮点数组成。我想基于第一列对数组进行排序,从最低到最高,这样:
data[0,data[0,:].argsort()]
但问题是负值是从最高值到最低值排序,因此-0.26
位于-0.56
之前,而正值则从最低到最高排序0.26
之前例如0.56
。
为什么会发生这种情况?如何才能获得正确的结果,也就是说负值是从最低值到最大值列出的?
答案 0 :(得分:2)
您的数组是一个字符串数组,因此您需要先将其转换为float数组:
data = data.astype(float)
data[0,data[0,:].argsort()]