Создать новый столбец в кадре данных, который показывает День недели из уже существующего столбца дд / мм / гг? Python - PullRequest
1 голос
/ 18 апреля 2020

У меня есть фрейм данных, который содержит столбец с датами, например, 24/07/15 и т. Д. Есть ли способ создать новый столбец в фрейме данных, который отображает все дни недели, соответствующие уже существующему столбцу «Дата»?

Я хочу, чтобы вывод отображался как: [Date] [DayOfTheWeek]

Ответы [ 3 ]

1 голос
/ 18 апреля 2020

Это может работать:

Если вы хотите название дня:

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
0 голосов
/ 18 апреля 2020

В зависимости от типа вашей колонки Дата.

df['Date']=pd.to_datetime(df['Date'], format="d/%m/%y") 
df['weekday'] = df['Date'].dt.dayofweek
0 голосов
/ 18 апреля 2020

Я бы попробовал применить функцию, так что-то вроде этого:

def extractDayOfWeek(dateString):
    ...

df['DayOfWeek'] = df.apply(lambda x: extractDayOfWeek(x['Date'], axis=1)

Идея состоит в том, что вы отображаете каждую строку, извлекаете столбец «дата», а затем применяете свою собственную функцию для создания новая запись строки с именем «День»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...