我有两个numpy数组:{/ 1>形式的date_month
array([datetime.datetime(2013, 1, 1, 12, 0),
datetime.datetime(2013, 9, 1, 12, 0),
datetime.datetime(2013, 5, 1, 12, 0)], dtype=object)
表单的和emission_each_month
array([5,7,3])
emission_each_month
的条目5属于时间戳(2013,1,1,12,0),7属于(2013,9,1,12,0),3属于(2013,5 ,1,12,0)。
(实际上我的数据要大得多)
我希望按日期对数据进行排序。我怎么做?
答案 0 :(得分:1)
您可以使用numpy.argsort()
获取datetime对象的排序数组的索引,然后使用返回的索引对数组进行排序 - emission_each_month
。示例 -
In [66]: import datetime
In [67]: import numpy as np
In [68]: n = np.array([5,7,3])
In [69]: d = np.array([datetime.datetime(2013, 1, 1, 12, 0), datetime.datetime(2013, 9, 1, 12, 0), datetime.datetime(2013, 5, 1, 12, 0)])
In [72]: n[np.argsort(d)]
Out[72]: array([5, 3, 7])