美文网首页
R-rbind.fill|列数不一致的多个数据集“智能”合并,G

R-rbind.fill|列数不一致的多个数据集“智能”合并,G

作者: 云养江停 | 来源:发表于2022-08-16 13:37 被阅读0次

Q:多个数据集,列数不一致,列名也不一致,如何按行合并,然后保留全部文件的变量并集呢?

A:使用 rbind.fill 函数试试!

数据集按列合并时,可以根据merge 或者 dplyr函数包的merge系列函数决定连接方式,达到数据合并的需求。

但是按行合并时常用的rbind,限制条件有点多,发现plyr包的rbind.fill 函数能比较好的解决这个问题。

一, 载入数据

#生成随机数据
data1<- data.frame(x1=runif(5),x2= runif(5),x3= runif(5))
data2<- data.frame(x1=rnorm(5),x4= runif(5))
data3<- data.frame(x3=rnorm(5),x5= rnorm(5))

data1,data2,data3 列数不一致,列名也不一致,如何按行合并,然后保留全部文件的变量并集呢?

可能的问题:

1)rbind: 是根据行进行合并(行叠加)但是要求rbind(a, c)中矩阵a、c的列数必需相等。

2)列数相同的时候,变量名不一致也会合并,导致出错

二 rbind.fill “智能”合并

列数不一致多个数据集,需要按行合并,尝试使用plyr包rbind.fill函数

library(plyr)
rbind.fill(data1,data2,data3)

就是这样,rbind.fill函数会自动对应数据列名不存在的会补充列,缺失时NA填充。

相关文章

  • R-rbind.fill|列数不一致的多个数据集“智能”合并,G

    Q:多个数据集,列数不一致,列名也不一致,如何按行合并,然后保留全部文件的变量并集呢? A:使用 rbind.fi...

  • R语言追加、连接、合并

    数据追加 数据合并 cbind(),rbind()函数,一个列合并,一个行合并 当列的个数不一致时,行合并时则用p...

  • 15.多表查询--内连接

    1. 合并结果集 只要从多张表查出来的数据的结果集列数和类型相同,就能合并 UNION ALL 不去重 UNION...

  • Tableau 4. 数据合并

    数据合并类似SQL中的UNION ALL(不去重的合并)。 适用于数据列相同,数据结构相同的多个数据源,比如多个月...

  • 数据集合并和批次效应

    战拖打卡3今天的任务是多数据集的合并和批次效应的移除。 数据集合并 方法 rbind 行合并 cbind 列合并 ...

  • R语言数据操作

    列合并 行合并 数据排序 两数据的交集,并集,补集 交集 并集 判断不同 判断是否相同 行名重复解决办法 处理一些...

  • pandas操作实例

    替换异常数据 合并多个df 多列判断 计算时间差 转json

  • 数据规整化:清理、转化、合并、重塑

    数据规整化:清理、转化、合并、重塑 合并数据集 pandas.merge 可根据一个或多个键将不同 DataFra...

  • 2018-8-26练习

    1-完整合并多个单元格内容 2-合并各列数据内容 3-在现有内容下快速插入多行多列 4-制作数据条,数据可视化 5...

  • union和union all 的区别

    使用union关键字时,可以给出多条select 语句,并将它们的结果合成单个结果集。合并时两个表对应的列数和数据...

网友评论

      本文标题:R-rbind.fill|列数不一致的多个数据集“智能”合并,G

      本文链接:https://www.haomeiwen.com/subject/wegrgrtx.html