You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将同名的多个Dummy变量合并为单一变量?

问题描述

使用fastDummies工具处理以下多列数据生成哑变量:

type 1type 2
fireleaf
leaffire

生成的哑变量列如下:

type 1$firetype$leaftype 2$firetype2$leaf
1001
0110

移除列名前缀后得到如下结构:

fireleaffireleaf
1001
0110

需要将同名列合并,得到以下结果:

fireleaf
11
11
解决方案

基于R语言,可通过按列名分组求和的方式实现同名列合并,以下是两种可行方法:

方法一:使用dplyr包分组处理

假设处理后的数据集名为df,代码如下:

library(dplyr)

df_merged <- df %>%
  summarise(across(everything(), sum), .by = names(.))

方法二:使用rowsum转置处理

df_merged <- as.data.frame(t(rowsum(t(df), group = colnames(df))))

两种方法都会将同名列的对应行值相加,最终实现“只要某行在任意同名列为1,合并后值为1”的效果,匹配目标输出。

内容的提问来源于stack exchange,提问作者stefano panero

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 04:16:09