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

如何在DataFrame中将第一列批量合并到其余所有列中?

嘿,这事儿好办!不用再手动逐个列去paste啦,给你两种批量处理的方法,看你习惯用基础R还是tidyverse工具:

方法一:基础R实现

直接用apply函数遍历除第一列外的所有列,批量完成拼接:

# 假设你的数据框名为test
test[, -1] <- apply(test[, -1], 2, function(col) {
  paste(test$TEST0, col)
})
  • 解释:test[, -1]选中除第一列(TEST0)外的所有列;apply(..., 2)表示按列处理;匿名函数里把每一列和TEST0列的内容拼接,最后把结果覆盖回原列。

方法二:tidyverse(dplyr)实现

如果你习惯用tidyverse的语法,mutate + across的组合更简洁直观:

library(dplyr)

test <- test %>%
  mutate(across(-TEST0, ~ paste(TEST0, .x)))
  • 解释:across(-TEST0)指定要处理除TEST0外的所有列;~ paste(TEST0, .x)是对每一列执行的拼接逻辑,.x代表当前正在处理的列。

额外小提示

如果需要自定义拼接的分隔符(比如不想用默认空格),可以在paste里加sep参数,比如:

# 用横线分隔
paste(test$TEST0, col, sep = " - ")

这样处理后,你的每一列都会自动和TEST0的内容完成拼接,完全不用手动重复操作~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 02:29:04