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

在R中如何将字符串类型的分组变量拆分为两个新变量

方法1:使用tidyr包(tidyverse生态,代码更简洁)

如果已经安装tidyverse或tidyr包,用separate()函数可以快速完成拆分:

# 未安装包先运行 install.packages("tidyr")
library(tidyr)

# 拆分Group列,remove=FALSE表示保留原始Group列,不需要的话设为TRUE即可
Exp1 <- Exp1 %>% 
  separate(Group, into = c("Type", "Achivement"), sep = " ", remove = FALSE)

如果需要和你给出的示例一致,让Type列末尾带空格,可以再加一步调整:

Exp1$Type <- paste0(Exp1$Type, " ")

方法2:Base R实现(无需安装额外包)

用基础函数strsplit()拆分字符串后提取对应位置的元素即可:

# 按空格拆分Group列的所有值
split_res <- strsplit(Exp1$Group, split = " ")
# 提取每个拆分结果的第一个元素为Type列,末尾加空格和示例格式匹配
Exp1$Type <- sapply(split_res, function(x) paste0(x[1], " "))
# 提取每个拆分结果的第二个元素为Achivement列
Exp1$Achivement <- sapply(split_res, function(x) x[2])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 11:15:03