Sorting a python array/recarray by column

前端 未结 5 1549
旧巷少年郎
旧巷少年郎 2020-12-02 11:33

I have a fairly simple question about how to sort an entire array/recarray by a given column. For example, given the array:

import numpy as np
data = np.a         


        
5条回答
  •  有刺的猬
    2020-12-02 12:05

    you are looking for operator.itemgetter

    >>> from operator import itemgetter, attrgetter
    
    >>> sorted(student_tuples, key=itemgetter(2))
    [('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
    
    >>> sorted(student_objects, key=attrgetter('age'))
    [('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
    

    i.e.

    In [7]: a
    Out[7]: [[5, 2], [4, 1], [3, 6]]
    
    In [8]: sorted(a, key=operator.itemgetter(0))
    Out[8]: [[3, 6], [4, 1], [5, 2]]
    

提交回复
热议问题