2017-07-06 191 views
1

我希望数据框如下,保存为csv文件,日期时间索引格式为 “%Y-%m-% d”。python2.7:dataframe date_format =“%Y-%m-%d”不起作用

date  price_am price_pm 
2017-06-01  E  E 
2017-06-02  D  E 
2017-06-03  C  D 

我用下面的代码,它不工作:

df.to_csv('move.csv', date_format='%Y-%m-%d') 

但是当我打开保存文件的CVS,日期时间格式显示如下:

 date   price_am price_pm 
    2017/6/1   E  E 
    2017/6/2   D  E 
    2017/6/3   C  D 

如何更改csv文件中的数据时间格式索引。谢谢!

<class 'pandas.core.frame.DataFrame'> 
DatetimeIndex: 2557 entries, 2011-01-01 to 2017-12-31 
Data columns (total 2 columns): 
price_am 2527 non-null object 
price_pm 2526 non-null object 
dtypes: object(2) 
memory usage: 59.9+ KB 
+0

是日期列中输入字符串?如果是这样,就需要使之日期时间列第一:DF [ '日期'] = p.to_datetime(DF [ '日期'],格式= '%Y /%M%d') – Yorian

+0

感谢,它是日期时间格式不是字符串。 – tktktk0711

回答

1

它看起来像你在Excel中验证数据 - 原始日期已更改。

尝试一些文本编辑器,如Notepad++ - csv文件数据是否正确。

如果使用默认选项:

print (df.head().to_csv()) 
date,price_am,price_pm 
2017-06-01,E,E 
2017-06-02,D,E 
2017-06-03,C,D 
+0

谢谢!我认为这是:df.index = df.index.strftime('%Y-%m-%d')。我用它,这也是行不通的。 – tktktk0711

+0

我不确定是否理解 - '%Y-%m-%d''是默认格式,对不对? – jezrael

+0

嗨,我想DATETIME指数是这种格式:%Y-%间%d”像在csv文件2017年6月1日,但我的csv文件只是显示格式,2017年6月1日 – tktktk0711

相关问题