检查几列中的日期并在 python 中创建一个新列

check for dates in couple of columns and create a new column in python

我是 Python 的新手。在数据框中,有两列,DOB(出生日期)和 DOD(死亡日期)。我想在名称为 "IS_ALIVE" 的数据框中创建一个新的分类列。此新字段的条件 IS_ALIVE 应为“1”,当 DOB 已填充且 DOD 为空时; IS_ALIVE 当 DOB 和 DOD 都不为空时应该为“0”,这意味着 DOD 中填充了某个日期。

我搜索并尝试了多种方法,但没有成功。请帮助我。

您可以创建布尔掩码 isna and notna 链接 &(按位与)并将 True/False 转换为整数 1/0:

df['IS_ALIVE'] = (df.DOB.notna() & df.DOD.isna()).astype(int)
#for old versions of pandas
#df['IS_ALIVE'] = (df.DOB.notnull() & df.DOD.isnull()).astype(int)