我有一个带有birth_date列的数据框。
df
birth_date:
1970-01-01 00:00:00
我正在从中读取数据的源是另一个数据帧,并且birth_date
数据类型是object。
当我将列转换为日期类型时,会得到随机的日期。代码:
df['birth_date'] = pd.to_datetime(df['birth_date'], errors='coerce')
确切的日期是:
birth_date
0 1990-06-11
1 2017-12-01
我不知道为什么。
我要做的就是获取今天的代码,看看是否是某人的生日,并分配一个ID。到目前为止,代码可以做到这一点,但是仍然有效,但是不确定是什么原因导致失败:
df['birth_date'] = pd.to_datetime(df['birth_date'],errors = 'coerce')
#from datetime import date
#today = str(date.today()) experimenting with this no luck
today = pd.to_datetime('today')
SegmentID = np.select(
[
df.birth_date.eq(today) & df['type'].eq('m'),
],
[1],
default=np.nan
)
df = df.assign(SegmentID=SegmentID).dropna(subset=['SegmentID'])