У меня есть кадр данных pandas с столбцом 'date_of_birth'. Значения принимают форму 1977-10-24T00:00:00.000Z
, например.Отбрасывание значений столбцов, которые не отвечают требованиям
Я хочу, чтобы захватить год, поэтому я попытался следующее:
X['date_of_birth'] = X['date_of_birth'].apply(lambda x: int(str(x)[4:]))
Это работает, если я гарантировал, что первые 4 буквы всегда целые числа, но она не по моим данным, установленным как некоторые даты испорченный или мусор. Есть ли способ настроить мою лямбду без использования регулярного выражения? Если нет, как я могу написать это в регулярном выражении?
Вы можете просто преобразовать в дату 'df ['date_of_birth'] = pd.to_datetime (df ['date_of_birth'], errors = 'coerce')', и тогда вы можете сделать 'df ['date_of_birth']. year' – EdChum