Arrays 对numpy数组排序
我有一个numpy数组,我想对行进行排序Arrays 对numpy数组排序,arrays,sorting,numpy,row,multiple-columns,Arrays,Sorting,Numpy,Row,Multiple Columns,我有一个numpy数组,我想对行进行排序 >>f1 array([['b', '3'], ['v', '7'], ['a', '1'], ['a', '0'], ['a', '5'], ['f', '7'], ['f', '5'], ['a', '2'], dtype=object) 我正在使用sort()并且我变
>>f1
array([['b', '3'],
['v', '7'],
['a', '1'],
['a', '0'],
['a', '5'],
['f', '7'],
['f', '5'],
['a', '2'], dtype=object)
我正在使用sort()并且我变得像这样
>> f1.sort()
>> print f1
[['3' 'b']
['7' 'v']
['1' 'a']
['0' 'a']
['5' 'a']
['7' 'f']
['5' 'f']
['2' 'a']]
但我需要的是
[['a' '0']
['a' '1']
['a' '2']
['a' '5']
['b' '3']
['f' '5']
['f' '7']
['v' '7']]
有人能帮我吗?Numpy sort接受一个轴进行排序:
from numpy import array
f= array([['b', '3'],
['v', '7'],
['a', '1'],
['a', '0'],
['a', '5'],
['f', '7'],
['f', '5'],
['a', '2']])
f.sort(0)
print f
我得到:
[['a' '0']
['a' '1']
['a' '2']
['a' '3']
['b' '5']
['f' '5']
['f' '7']
['v' '7']]
编辑:
我刚意识到这可能不是你想要的numpy
sort在所有可能的遍历中沿轴排序(例如,在本例中,对每列分别排序)。要按第一个索引进行“行”排序,请执行以下操作:
print array(sorted(f,key=lambda x: list(x)))
NM,显然第一次就做对了:)Numpy sort接受一个轴进行排序:
from numpy import array
f= array([['b', '3'],
['v', '7'],
['a', '1'],
['a', '0'],
['a', '5'],
['f', '7'],
['f', '5'],
['a', '2']])
f.sort(0)
print f
我得到:
[['a' '0']
['a' '1']
['a' '2']
['a' '3']
['b' '5']
['f' '5']
['f' '7']
['v' '7']]
编辑:
我刚意识到这可能不是你想要的numpy
sort在所有可能的遍历中沿轴排序(例如,在本例中,对每列分别排序)。要按第一个索引进行“行”排序,请执行以下操作:
print array(sorted(f,key=lambda x: list(x)))
NM,显然第一次就做对了:)我们怎么在o/p中有
['a''7']
?我们怎么在o/p中有['a''7']
?