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

R语言有没有函数可以拆分单元格为新行同时复制其余列数据

R语言实现单元格拆分并扩展为多行的方案

方案1:使用tidyr包的separate_rows(推荐,代码最简洁)

这个函数是tidyverse生态中专门用于处理该类需求的工具,只需指定拆分列和分隔符即可自动完成行扩展,其余列数据自动对应复制。
代码示例:

# 未安装tidyr先执行:install.packages("tidyr")
library(tidyr)

# 直接按逗号拆分Send_To列并扩展为多行
mydf_spreaded <- separate_rows(mydf, Send_To, sep = ",")

运行后得到的结果和你给出的预期输出完全一致。

方案2:纯Base R实现(无第三方包依赖)

如果不想引入额外依赖,可以用基础函数组合实现:

# 按逗号拆分Send_To列的每个单元格
split_list <- strsplit(mydf$Send_To, split = ",")
# 计算每个原行需要重复的次数
rep_times <- lengths(split_list)
# 重复其余列的行,拼接拆分后的id得到结果
mydf_spreaded <- data.frame(
  Sent_From = rep(mydf$Sent_From, rep_times),
  Timestamp = rep(mydf$Timestamp, rep_times),
  Send_To = unlist(split_list)
)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 18:57:01