在Power BI中将Yes/No列转换为1/0的快速方法咨询
Yes/No列转1/0数值列的简便方法
下面按常用工具场景给出可直接使用的操作方案:
Excel
- 基础转换:假设待转换列是A列,新列首行(对应数据行首行)输入公式
=IF(A2="Yes",1,0),下拉填充整列即可。 - 兼容大小写场景:可以用公式
=IF(UPPER(A2)="YES",1,0),避免小写yes/大写NO等内容匹配失败。
Python(Pandas)
- 基础映射转换,假设DataFrame名为
df,待转换列名为target_col,新列名为target_col_num:
df['target_col_num'] = df['target_col'].map({'Yes':1, 'No':0})
- 兼容异常值场景:非Yes/No的内容自动填充NaN,避免报错:
df['target_col_num'] = df['target_col'].map({'Yes':1, 'No':0}, na_action='ignore')
SQL
- 用CASE WHEN语句实现转换,假设表名为
data_table,待转换列名为status,新列别名为status_num:
SELECT *, CASE WHEN status = 'Yes' THEN 1 ELSE 0 END AS status_num FROM data_table;
R
- 直接用ifelse函数转换,假设数据框名为
df,待转换列名为check_result,新列名为check_result_num:
df$check_result_num <- ifelse(df$check_result == "Yes", 1, 0)
内容的提问来源于stack exchange,提问作者Mark k
相关产品推荐
相关产品推荐

