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

如何在R中将行数不同的dataframe列表合并为单个dataframe?

在R中合并行数不同的单变量DataFrame列表

你的三个DataFrame都只包含protein列,只是行数不同,直接按行拼接即可,以下是两种常用实现方式:

方法1:用基础R实现

直接借助do.call()和rbind()函数,把列表里的所有DataFrame按行合并:

# 假设你的列表对象名为df_list
merged_df <- do.call(rbind, df_list)

如果需要区分每条数据来自哪个原始DataFrame,可以先给每个DataFrame加一个来源标识列,再合并:

# 给列表里的每个DataFrame添加来源标记
df_list <- Map(function(df, num) {
  df$source <- paste0("df_", num)
  df
}, df_list, 1:length(df_list))

# 执行合并
merged_df <- do.call(rbind, df_list)

方法2:用tidyverse工具实现

如果习惯用tidyverse生态,dplyr包的bind_rows()函数更简洁,还能自动帮你添加来源标识:

library(dplyr)

# 直接合并
merged_df <- bind_rows(df_list)

# 带来源标识的合并(.id参数会生成记录来源的列)
merged_df <- bind_rows(df_list, .id = "source")

内容的提问来源于stack exchange,提问作者Carolina Raissa Costa Picossi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 17:39:20