Конвертировать необработанную дату в год / месяц / день недели в пандах - PullRequest
0 голосов
/ 23 сентября 2019

У меня есть фрейм данных Pandas с необработанными датами, отформатированными как «19990130».Я хочу преобразовать их в новые столбцы: «год», «месяц» и «день недели».

Я попытался использовать следующее:

pd.to_datetime(df['date'], format='%Y%m%d', errors='ignore').values

, которое дает мне массив объектов datetime.Тем не менее, следующий шаг, который я попытался использовать .to_pydatetime (), а затем .year, чтобы попытаться получить год, как это:

pd.to_datetime(df['date'], format='%Y%m%d', errors='ignore').values.to_pydatetime().year

Это работает, когда я тестирую одно значение, но с Pandasdataframe.Я получаю:

'numpy.ndarray' object has no attribute 'to_pydatetime'

Какой самый простой способ извлечь из этих данных год, месяц и день недели?

1 Ответ

2 голосов
/ 23 сентября 2019

Попробуйте:

s = pd.to_datetime(df['date'], format='%Y%m%d', errors='coerce')

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