我有一个pandas数据框,如下所示:
Symbol Date
A 02/20/2015
A 01/15/2016
A 08/21/2015
我想按Date
排序,但列只是一个object
。
我试图使该列成为日期对象,但遇到了一个问题,即该格式不是所需的格式。需要的格式是2015-02-20,
等
所以现在我正在想办法让numpy把‘美国’日期转换成I So标准,这样我就可以把它们做成日期对象,这样我就可以按它们排序了。
我该如何将这些美国日期转换成ISO标准,或者我在熊猫身上缺少一种更直接的方法?
Tags:
可以使用
pd.to_datetime()
转换为datetime对象。它需要一个格式参数,但在您的情况下,我认为您不需要它。对于以后的搜索,可以更改排序语句:
数据帧的} 。在使用
sort
方法一直是deprecated。现在是^{df['Date']=pd.to_datetime(df['Date'])
转换为datetime对象之后注:按的位置和/或降序(逆时间顺序)对进行排序:
@JAB's answer快速而简洁。但它会改变您试图排序的
DataFrame
,您可能需要,也可能不需要。(注意:您几乎肯定会想要它,因为您的日期列应该是日期,而不是字符串!)
在不太可能的情况下,你不想把日期改成日期,你也可以用不同的方法。
首先,从排序的
Date
列获取索引:然后使用它为原始的
DataFrame
编制索引,使其保持不变:魔法!
注意:对于Pandas 0.20.0及更高版本,请使用^{} ,而不是现在已被弃用的
ix
。相关问题 更多 >
编程相关推荐