首页 > 解决方案 > 在数据框中创建一个新列,从现有的 dd/mm/yy 列显示星期几?Python

问题描述

我有一个数据框,其中包含一个日期列,例如 24/07/15 等有没有办法在数据框中创建一个新列,显示对应于已经存在的“日期”列的一周中的所有天?

我希望输出显示为:[Date][DayOfTheWeek]

标签: pythonpandasdataframe

解决方案


这可能有效:

如果您想要日期名称:

In [1405]: df                                                                                                                                                                                               
Out[1405]: 
      dates
0  24/07/15
1  25/07/15
2  26/07/15    

In [1406]: df['dates'] = pd.to_datetime(df['dates']) # You don't need to specify the format also.                                                                                                                                                      

In [1408]: df['dow'] = df['dates'].dt.day_name()                                                                                                                                                            

In [1409]: df                                                                                                                                                                                               
Out[1409]: 
       dates       dow
0 2015-07-24    Friday
1 2015-07-25  Saturday
2 2015-07-26    Sunday

如果你想要天数:

In [1410]: df['dow'] = df['dates'].dt.day                                                                                                                                                                   

In [1411]: df                                                                                                                                                                                               
Out[1411]: 
       dates  dow
0 2015-07-24   24
1 2015-07-25   25
2 2015-07-26   26

推荐阅读