将%m-%d转换为dayofyear格式

时间:2018-05-15 02:44:33

标签: python python-3.x pandas datetime-format

我有一个DataFrame,其日期为字符串形式'%m-%d'我想将它转换为dayofyear格式,我该怎么做?

1 个答案:

答案 0 :(得分:2)

如果你有这样的df:

df = {'date': ['12-31','01-01','07-02', '12-04','06-05'],
      'col1': [5,10,20,30,20]}
df = pd.DataFrame(data=df)

   col1   date
0     5  12-31
1    10  01-01
2    20  07-02
3    30  12-04
4    20  06-05

您可以通过这种方式(非闰年)将列date转换为dayofyear格式:

df["date"]= pd.to_datetime(df.date, format="%m-%d").dt.dayofyear

输出:

   col1  date
0     5   365
1    10     1
2    20   183
3    30   338
4    20   156