我有一个 Pandas 数据框如下:
Symbol Date
A 02/20/2015
A 01/15/2016
A 08/21/2015
我想按Date
对其进行排序,但该列只是一个对象
。
我尝试将列设为日期对象,但遇到了一个问题,即该格式不是所需的格式。所需格式为2015-02-20,
等
所以现在我想弄清楚如何让 numpy 将“美国”日期转换为 ISO 标准,以便我可以将它们设为日期对象,以便我可以按它们排序。
如何将这些美国日期转换为 ISO 标准,或者我在 pandas 中缺少更直接的方法?
最佳答案
您可以使用 pd.to_datetime()
转换为日期时间对象。它需要一个格式参数,但在您的情况下,我认为您不需要它。
>>> import pandas as pd
>>> df = pd.DataFrame( {'Symbol':['A','A','A'] ,
'Date':['02/20/2015','01/15/2016','08/21/2015']})
>>> df
Date Symbol
0 02/20/2015 A
1 01/15/2016 A
2 08/21/2015 A
>>> df['Date'] =pd.to_datetime(df.Date)
>>> df.sort('Date') # This now sorts in date order
Date Symbol
0 2015-02-20 A
2 2015-08-21 A
1 2016-01-15 A
为了以后的搜索,可以更改排序语句:
>>> df.sort_values(by='Date') # This now sorts in date order
Date Symbol
0 2015-02-20 A
2 2015-08-21 A
1 2016-01-15 A
关于python - 将列转换为日期格式( Pandas 数据框),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28161356/