如何在pandas或Excel中新增根据另一列非空状态赋值的新列
实现方案
Pandas 实现
首先确认A列已经处理为日期类型,无效/空值会被转为NaT,直接通过非空判断转整数即可实现需求,代码如下:
import pandas as pd # 若A列目前是字符串格式,先执行这一步转日期类型,无效值自动转为NaT df['A'] = pd.to_datetime(df['A'], errors='coerce') # 新增X列,非空为1,空值为0 df['X'] = pd.notna(df['A']).astype(int)
Excel 实现
假设A列是存储日期的列,数据从第2行开始,表头在第1行:
- 点击X列第2行的单元格,输入公式:
=IF(ISNUMBER(A2),1,0) - 按住单元格右下角的填充柄下拉到所有数据行,即可自动完成所有行的X列赋值。
说明:Excel中合法日期本质是数值格式,
ISNUMBER函数会识别有效日期返回TRUE,空值/非日期格式值返回FALSE,配合IF函数即可输出0/1的结果。
内容的提问来源于stack exchange,提问作者WarlockQ
相关产品推荐
相关产品推荐

