从pandas数据框中的字符串日期获取一年中的日期

时间:2018-06-27 13:19:49

标签: pandas python-datetime

我想将日期字符串转换为一年中的某天...我尝试这段代码。

import pandas as pd
import datetime

data = pd.DataFrame()
data = pd.read_csv(xFilename, sep=",")

并获取此DataFrame

Index Date        Tmin    Tmax
0   1950-01-02  -16.508 -2.096
1   1950-01-03  -6.769  0.875
2   1950-01-04  -1.795  8.859
3   1950-01-05  1.995   9.487
4   1950-01-06  -17.738 -9.766

我尝试这个...

convert = lambda x: x.DatetimeIndex.dayofyear
data['Date'].map(convert)

出现此错误:

AttributeError: 'str' object has no attribute 'DatetimeIndex'

我希望获得新的日期以匹配1950-01-02 = 2,1950-01-03 = 3 ... 感谢您的帮助...对不起,我是python上的新人

1 个答案:

答案 0 :(得分:1)

我认为需要将参数parse_dates传递到read_csv,然后调用Series.dt.dayofyear

data = pd.read_csv(xFilename, parse_dates=["Date"])
data['dayofyear'] = data['Date'].dt.dayofyear