我正在使用Pandas版本0.12.0导入一个包含日期的csv文件。
日期的格式如下:'SEP2005'
使用Pandas读取csv文件:
import pandas as pd
DF = pd.read_csv('mydata.csv')
mydata.head()
Out[40]:
Date Quantity
0 APR2002 282.0000
1 APR2002 NaN
2 APR2002 0.0000
3 APR2002 20.2253
4 APR2002 55.6853
然后我使用以下方法将日期列转换为索引:
mydata.index = pd.to_datetime(mydata.pop('Date'))
过去很奇怪的是它解析了我的日期并将格式转换为2002-04-15,这正是我想要的。然后我只需要确保日期设置为本月的最后一天:
mydate.index = mydata.index.to_period('M').to_timestamp('M')
Pandas在过去已经很好地选择了最佳的日期格式。
但是,现在当我这样做时,我得到的DataFrame
返回相同的文本"APR2002"。
正如你猜测的那样,最后一个to_period
将无法处理它。
我没有改变我的代码,也没有更新Pandas,所以我不确定这个变化来自哪里。
我不确定我是否太关心为什么。我真正需要帮助的是如何格式化索引列以反映年-月-日或%Y%m%d
,例如2005-04-30
我来自R语言,任何帮助都将是巨大的!