如何根据另一列是否包含日期来创建Pandas列(二进制)

u7up0aaq  于 2023-06-20  发布在  其他
关注(0)|答案(1)|浏览(78)

我正在分析客户流失。我的数据集包含了多年来留下来或离开的客户。我需要根据['CHURN_DATE']列中是否有日期来创建['CHURN_FLAG']列。如果['CHURN_DATE']列中有日期,则客户流失。
当前 Dataframe :
| CHURNdate|
| - -----|
| 2019 - 01 - 21 2019 - 01 - 21|
| NaT|
期望:
| CHURNdate| CHURNflag|
| - -----|- -----|
| 2023-1-1| 1|
| NaT| 0|
我创建了一个列['TODAY_DATE'],并试图通过评估['CHURNdate'] <['TODAY_DATE']来解决,然后二进制1将填充,否则0。下面是代码:

df2['CHURNflag'] = np.where(df2['CHURNdate']<df2['TODAY_DATE'], 0, 1)

当然,这并不管用。:(数据类型为datetime 64

h43kikqp

h43kikqp1#

churn['CHURNflag'] = np.where(churn['CHURNdate'].isna(), 0, 1)

Out[24]: 
    CHURNdate  CHURNflag
0  2023-01-01          1
1         NaN          0

相关问题