专栏首页生信补给站R-rbind.fill|列数不一致的多个数据集“智能”合并,Get!

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

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填充。

本文分享自微信公众号 - 生信补给站(Bioinfo_R_Python),作者:生信补给站

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-03-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • R语言︱list用法、批量读取、写出数据时的用法

    列表是一种特别的对象集合,它的元素也由序号(下标)区分,但是各元素的类型可 以是任意对象,不同元素不必是同一类型。元素本身允许是其它复杂数据类型,比如,列表 的...

    素质
  • R语言指定列取交集然后合并多个数据集的简便方法

    因为5份数据集以csv格式存储,首先就是获得存储路径下所有的csv格式文件的文件名,用到的命令是

    用户7010445
  • scrapy0700:深度爬虫scrapy深度爬虫

    爬虫程序,主要是用与数据采集处理的一种网络程序,在操作过程中针对指定的url地址进行数据请求并根据需要采集数据,但是在实际项目开发过程中,经常会遇到目标url地...

    大牧莫邪
  • 备战世界杯!先用深度学习与强化学习踢场 FIFA 18

    构建能玩 FIFA 游戏的智能体与游戏内置的 Bot 是不一样的,它不能访问任何内部程序信息,只能与人一样获得屏幕的输出信息。游戏窗口截图就是所有需要馈送到智能...

    IT派
  • R语言入门

    最近在复习python的科学计算,突然心血来潮,想看看R的数据处理和python的区别在哪,所以就有了这篇文章。 R语言简介 四十多年前, R 语言的始祖诞生了...

    若与
  • 【BDTC 2015】大数据分析及生态系统分论坛:HBase、Spark、ES、Kylin技术生态

    2015年12月10-12日,由中国计算机学会(CCF)主办,CCF大数据专家委员会承办,中国科学院计算技术研究所、北京中科天玑科技有限公司与CSDN共同协办,...

    CSDN技术头条
  • [喵咪大数据]Hbase搭建和基本使用

    [喵咪大数据]Hbase搭建和基本使用 ? 说完了Hive我们接着来看另外一个建立在Hadoop基础上的存储引擎HBase,HBase以内存作为缓存数据落地到H...

    喵了个咪233
  • Python 面试题大全系列(四)

    关系型数据库:MySQL,Oracle,SQLServer,SQLite,DB2 非关系型数据库:MongoDB,Redis,HBase,Neo4j

    周萝卜
  • Elasticsearch实现数据冷热分离

    性能与容量之间的矛盾由来已久,计算机的多级存储体系就是其中一个经典的例子,同样的问题在Elasticsearch中也存在。为了保证Elasticsearch的读...

    HLee

扫码关注云+社区

领取腾讯云代金券