#python #pandas #dataframe
Вопрос:
Мне нужно создать логический столбец в панд, чтобы нечетные дни давали мне Истину, а четные дни-Ложь.
Даты указаны в формате 2019-ММ-ДД, например 2019-06-04.
2019-06-04-четный день, поэтому я хочу получить от него Ложь 2019-06-03-нечетный день, поэтому я хочу получить от него Правду
Я думал о чем-то вроде
df['New Column'] = int(df['Date'].astype(str).iloc[0][8:]) % 2 == 1
Но приведенный выше код вернет только логическое значение первой строки в [‘Дата’]
Как мне сделать так, чтобы индекс 0 увеличивался по строкам?
Комментарии:
1. что вы подразумеваете под нечетным свиданием? ты имеешь в виду странные дни?
2. @AnuragDabas Да, странный день. так что 2019-06-04-это четный день, который должен дать мне ложные
Ответ №1:
попробуйте с помощью day
атрибута:
df['Date']=pd.to_datetime(df['Date'])
#ensure that 'Date' column is of dtype datetime
df['New Column'] =df['Date'].dt.day%2!=0
#Finally check if the day is even or not
Комментарии:
1. Спасибо, это работает. Я одобрю его через несколько минут