将数据类型对象 DD-Mon-YYYY 转换为 Python 中的数据格式

Convert data type object DD-Mon-YYYY to data format in Python

我使用 pd.read_csv 以下列格式加载了一个 csv -

obj = pd.read_csv('usd_brl_date.csv', sep=';', usecols=[1,2,3,4,5,6])

In [34]: obj
Out [34]:
             Date   Price    Open    High     Low Change %
0     18/Mar/2016  3.6128  3.6241  3.6731  3.6051   -0.31%
1     17/Mar/2016  3.6241  3.7410  3.7449  3.6020   -3.16%
2     16/Mar/2016  3.7422  3.7643  3.8533  3.7302   -0.62%

In [35]: usdbrl.dtypes
Out [35]
Date         object
Price       float64
Open        float64
High        float64
Low         float64
Change %     object
dtype: object

我需要将列日期类型对象转换为数据类型。或者如果可以为 pd.read_csv.

中的第一列设置 dtype

您可以使用 to_datetime:

df['Date'] = pd.to_datetime(df['Date'], format="%d/%b/%Y")

print df
        Date   Price    Open    High     Low Change %
0 2016-03-18  3.6128  3.6241  3.6731  3.6051   -0.31%
1 2016-03-17  3.6241  3.7410  3.7449  3.6020   -3.16%
2 2016-03-16  3.7422  3.7643  3.8533  3.7302   -0.62%

Formats.

或者在read_csv, as mentioned 中添加参数parse_dates:

obj = pd.read_csv('usd_brl_date.csv', sep=';', usecols=[1,2,3,4,5,6], parse_dates=['Date'])

print df
        Date   Price    Open    High     Low Change %
0 2016-03-18  3.6128  3.6241  3.6731  3.6051   -0.31%
1 2016-03-17  3.6241  3.7410  3.7449  3.6020   -3.16%
2 2016-03-16  3.7422  3.7643  3.8533  3.7302   -0.62%