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

R语言如何将split拆分的多个dataframe按水平方向cbind合并

R实现拆分后tibble横向合并的最简方案

方案1:拆分合并一步完成(无需额外命名)

如果你不需要单独使用拆分后的子tibble,直接对split返回的列表做合并即可,两种常用写法:

  • 基于tidyverse生态的最简写法:
library(purrr)
combined_df <- split(data_filt, 0:nrow(data_filt) %/% 561) %>% 
  list_cbind(name_repair = "universal")
  • 纯base R写法,无需加载额外包:
combined_df <- do.call(cbind, split(data_filt, 0:nrow(data_filt) %/% 561))

两种写法都会自动为不同子表的列添加唯一前缀,避免列名冲突,最终输出的总列数为156=90列,行数保持561行,符合需求*

方案2:拆分时自定义子表命名,方便后续单独调用合并

如果你需要单独使用各个子tibble,拆分时给列表元素命名即可:

# 拆分并给子表命名,命名规则为part_1、part_2...part_15
split_list <- split(data_filt, 0:nrow(data_filt) %/% 561)
names(split_list) <- paste0("part_", seq_along(split_list))

# 后续手动合并时直接调用列表即可
combined_df <- do.call(cbind, split_list)
# 也可以按需选择部分子表合并,比如cbind(split_list$part_1, split_list$part_3)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 21:45:03