在熊猫中以“%Y%M%D”的形式将日期转换为“%Y%M%D%H%M%S”

时间:2015-05-14 09:08:09

标签: python pandas

以下是我的数据框

   Date Time   Open   High    Low  Close     Volume  Adj Close
0 2012-05-15  15.90  16.06  15.80  16.02  134454.78       0.08
1 2012-05-16  16.00  16.00  15.75  15.76  150305.11      -0.26
2 2012-05-17  15.80  15.97  15.76  15.94  133389.98       0.18
3 2012-05-18  15.80  15.91  15.66  15.72  157863.19      -0.22
4 2012-05-21  15.72  15.84  15.70  15.77   85694.85       0.05

您会在“日期时间”列中看到,数据的格式为“%Y%M%D” 我想将它们转换为“%Y%M%D%H%M $ S”,例如2012-05-17 00:00:00

谢谢!

2 个答案:

答案 0 :(得分:1)

如果尚未转换为日期时间,则可以致电apply并使用datetime.strftime进行格式化:

In [212]:

df['Date'] = pd.to_datetime(df['Date'])
df['Date']
Out[212]:
index
0   2012-05-15
1   2012-05-16
2   2012-05-17
3   2012-05-18
4   2012-05-21
Name: Date, dtype: datetime64[ns]
In [213]:

import datetime as dt
df['Date'] = df['Date'].apply(lambda x: dt.datetime.strftime(x, '%Y-%m-%d %H:%M:%S'))
df['Date']
Out[213]:
index
0    2012-05-15 00:00:00
1    2012-05-16 00:00:00
2    2012-05-17 00:00:00
3    2012-05-18 00:00:00
4    2012-05-21 00:00:00
Name: Date, dtype: object

请注意,这会将dtype从datetime转换为str

答案 1 :(得分:-2)

请仔细阅读,我知道这不是确切的答案,但它可能对你有帮助。

http://pandas.pydata.org/pandas-docs/stable/timeseries.html