В качестве примера:
df = pd.DataFrame(data={'user': ['a', 'b', 'a', 'b'],
'eventTime': [datetime(2000, 1, 1),
datetime(2000, 2, 2),
datetime(2000, 3, 3),
datetime(2000, 4, 4)]})
print(df)
# eventTime user
# 0 2000-01-01 a
# 1 2000-02-02 b
# 2 2000-03-03 a
# 3 2000-04-04 b
Вы можете работать с определенным столбцом с помощью метода apply()
, а объекты datetime
предоставляют datetime.day
свойство, которое дает вам день месяца в виде целого числа:
df['day'] = df.eventTime.apply(lambda x: x.day)
print(df)
# eventTime user day
# 0 2000-01-01 a 1
# 1 2000-02-02 b 2
# 2 2000-03-03 a 3
# 3 2000-04-04 b 4
Если вы хотите заменить столбец eventTime
вместо создания нового столбца, просто используйте:
df['eventTime'] = df.eventTime.apply(lambda x: x.day)