如何在多列二进制数据中提取值为1的列名(含函数参考)
提取独热编码数据中值为1的列名
场景1:3列数据中获取值为1的列名
假设你的数据在A、B、C三列,每行仅有一列值为1,其余为0。要获取对应列名,可使用嵌套IF函数:
=IF(A1=1, "A", IF(B1=1, "B", "C"))
将公式下拉填充即可对每一行生效——依次判断A、B列是否为1,匹配成功则返回对应列名,若前两列都不是,直接返回C列列名(因为每行必存在一个1)。
场景2:填充婚姻状态列
假设婚姻状态列分别为Single、Married、Divorced、Widowed(对应D、E、F、G列),需在MaritalStatus列(H列)填入值为1的对应列名,同样用嵌套IF函数实现:
=IF(D1=1, "Single", IF(E1=1, "Married", IF(F1=1, "Divorced", "Widowed")))
下拉公式后,每行都会根据独热编码的1所在位置,自动填入对应的婚姻状态名称。
内容的提问来源于stack exchange,提问作者Abel Zewdu
相关产品推荐
相关产品推荐

