列数小于行数时为表格新增指定规则Dummy列的实现咨询
实现方案
以下提供Python Pandas和R两种常用数据处理工具的实现代码:
Python Pandas 版本
import pandas as pd # ------------ 读取你的输入表格,以下为示例构造代码可替换 ------------ df = pd.DataFrame({ 'A': [4, 2, 8, 4, 3, 7], 'B': [2, 6, 3, 2, 6, 3], 'C': [5, 8, 4, 5, 7, 8] }) # 计算需要新增的Dummy列数量:行数减现有列数 add_col_num = df.shape[0] - df.shape[1] # 批量生成列名并赋值全0 for idx in range(1, add_col_num + 1): df[f'd{idx}'] = 0 # 查看输出结果 print(df)
运行后输出结果和你给出的期望效果完全一致。
R 版本
# ------------ 读取你的输入表格,以下为示例构造代码可替换 ------------ df <- data.frame( A = c(4, 2, 8, 4, 3, 7), B = c(2, 6, 3, 2, 6, 3), C = c(5, 8, 4, 5, 7, 8) ) # 计算需要新增的Dummy列数量:行数减现有列数 add_col_num <- nrow(df) - ncol(df) # 批量生成列名并赋值全0 for (i in 1:add_col_num) { df[[paste0("d", i)]] <- 0 } # 查看输出结果 print(df)
补充说明
如果需要兼容行数小于列数的场景,保证最终表格为严格正方形,可增加分支判断:行数大于列数时补0列,列数大于行数时补0行即可。
内容的提问来源于stack exchange,提问作者bluesky
相关产品推荐
相关产品推荐

