3

したがって、次のコードを使用して入力したcsvファイルがあります。

csvdata = np.loadtxt(sys.argv[2],
                     delimiter=',',
                     dtype={
                            'names': ('year', 'month', 'day', 'ItemName'), 
                            'formats': ('i4', 'i4', 'i4', 'S10')
                           }
                    )

ここで、このデータを年、月、日に基づいて並べ替えたいと思いました。誰かがこれを行う方法を教えてもらえますか????

Csvデータは次のようになります。

2012,3,6、ABCD
2012,3,6、XYZA

問題は、現在名前でソートされているということです。日に欲しかった。

4

1 に答える 1

4

マニュアルにあります(http://docs.scipy.org/doc/numpy/reference/generated/numpy.sort.html)

orderキーワードを使用して、構造化配列を並べ替えるときに使用するフィールドを指定します。

>>> dtype = [('name', 'S10'), ('height', float), ('age', int)]
>>> values = [('Arthur', 1.8, 41), ('Lancelot', 1.9, 38),
...           ('Galahad', 1.7, 38)]
>>> a = np.array(values, dtype=dtype)       # create a structured array
>>> np.sort(a, order='height')                        
array([('Galahad', 1.7, 38), ('Arthur', 1.8, 41),
       ('Lancelot', 1.8999999999999999, 38)],
      dtype=[('name', '|S10'), ('height', '<f8'), ('age', '<i4')])

あなたが望んでいるのは:

np.sort(csvdata, order=['year', 'month', 'day'])
于 2012-11-19T11:10:18.527 に答える