Pandas датафрейм применяется к столбцу datetime: не работает - PullRequest
2 голосов
/ 20 марта 2020

У меня есть датафрейм со столбцом даты и времени. Я хочу применить функцию, чтобы установить значение как Нет в этом столбце, если дата уступает другой дате. Но примененная функция установила все мои значения в None. Не могли бы вы мне помочь?

Вот мой код:

dateused = datetime.datetime.strptime('202004', '%Y%m')
df['date_pack'] =df['date_pack'].apply(lambda x: None if x < dateused else x)

dtype для df ['date_pack'] - datetime64 [ns]. После этого все мои значения в моем столбце date_pack равны None.

Спасибо

1 Ответ

2 голосов
/ 20 марта 2020

Я думаю, вам нужно Series.mask с установленными значениями NaT для значений misisng для datetime:

df = pd.DataFrame({'date_pack': pd.to_datetime(['2020-08-10','2002-02-09'])})

dateused = datetime.datetime.strptime('202004', '%Y%m')
df['date_pack'] = df['date_pack'].mask(df['date_pack'] < dateused)
print (df)
   date_pack
0 2020-08-10
1        NaT
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...