“R:数据合并”的版本间的差异

来自OBHRM百科
跳转至: 导航搜索
合并变量
 
(未显示同一用户的3个中间版本)
第1行: 第1行:
==合并变量==
+
==<span id="merge"></span>合并变量==
 
如果您有不同的数据文件,每个数据文件包括同一批样本,但是每个文件包括不同的变量。在进行后续的统计分析之前,需要将这些数据合并,这个时候就是“合并变量”。
 
如果您有不同的数据文件,每个数据文件包括同一批样本,但是每个文件包括不同的变量。在进行后续的统计分析之前,需要将这些数据合并,这个时候就是“合并变量”。
  
第21行: 第21行:
 
  mydata <- merge(mydata1,mydata2, by="caseid", all.y=TRUE) # 保存两个数据框中所有匹配数据以及mydata2中不匹配的数据
 
  mydata <- merge(mydata1,mydata2, by="caseid", all.y=TRUE) # 保存两个数据框中所有匹配数据以及mydata2中不匹配的数据
  
==合并样本==
+
==<span id="rbind"></span>合并样本==
如果您有不同的数据文件,每个数据文件包括不同的样本,变量基本相同。在进行后续的统计分析之前,需要将这些数据合并,这个时候就是“合并样本”。
+
如果您有不同的数据文件,每个数据文件包括不同的样本,变量相同。在进行后续的统计分析之前,需要将这些数据合并,这个时候就是“合并样本”。
 +
 
 +
如果两个数据文件中的变量不同,则需要在合并之前,先对数据进行处理,确保两个数据框中的变量一样,您可以删除一个数据框中的部分变量,或者在另一个数据框中增加一些变量,并将其设为缺失值(即NA)。
 +
 
 +
如果您已经有两个数据框,分别为mydata1, mydata2,合并样本的方法如下:
 +
 
 +
mydata <- rbind(mydata1,mydata2)  # 在合并之前,先将数据从数据文件读入数据框,并确保两个数据框中的变量数量、名称一样,顺序可以不一样。

2017年3月9日 (四) 07:56的最新版本

合并变量

如果您有不同的数据文件,每个数据文件包括同一批样本,但是每个文件包括不同的变量。在进行后续的统计分析之前,需要将这些数据合并,这个时候就是“合并变量”。

合并变量使用函数:merge(),merge函数的具体用法如下,如果您希望了解每个参数的具体含义和使用方法,可以在R控制台输入:? merge。

merge(x, y, by = intersect(names(x), names(y)),
      by.x = by, by.y = by, all = FALSE, all.x = all, all.y = all,
      sort = TRUE, suffixes = c(".x",".y"),
      incomparables = NULL, ...)

如果您已经有两个数据框,分别为mydata1, mydata2。合并变量需要在两个数据框里头有一个用来标识样本身份的变量,一般是根据这个变量对两个数据框中的样本进行匹配。这个变量在两个数据框中,可以名称相同(比如,都是caseid),也可以不同(比如,一个是caseid,一个是sampleid)。具体合并方法如下:

如果两个数据框中的身份变量一样,均为:caseid,则:

mydata <- merge(mydata1,mydata2, by="caseid")

如果两个数据框中的身份变量不一样,mydata1中为caseid,mydata2中为sampleid,则:

mydata <- merge(mydata1,mydata2, by.x="caseid, by.y="sampleid")

默认情况下,merge会删除两个数据框中任何不匹配的样本。如果您希望保存所有数据,使用all=TRUE;如果只想保存mydata1中的所有数据,使用all.x=TRUE;如果只想保存mydata2中的所有数据,使用all.y=TRUE,分别如下:

mydata <- merge(mydata1,mydata2, by="caseid", all=TRUE)   # 保存两个数据框中所有匹配、不匹配的数据
mydata <- merge(mydata1,mydata2, by="caseid", all.x=TRUE) # 保存两个数据框中所有匹配数据以及mydata1中不匹配的数据 
mydata <- merge(mydata1,mydata2, by="caseid", all.y=TRUE) # 保存两个数据框中所有匹配数据以及mydata2中不匹配的数据

合并样本

如果您有不同的数据文件,每个数据文件包括不同的样本,变量相同。在进行后续的统计分析之前,需要将这些数据合并,这个时候就是“合并样本”。

如果两个数据文件中的变量不同,则需要在合并之前,先对数据进行处理,确保两个数据框中的变量一样,您可以删除一个数据框中的部分变量,或者在另一个数据框中增加一些变量,并将其设为缺失值(即NA)。

如果您已经有两个数据框,分别为mydata1, mydata2,合并样本的方法如下:

mydata <- rbind(mydata1,mydata2)  # 在合并之前,先将数据从数据文件读入数据框,并确保两个数据框中的变量数量、名称一样,顺序可以不一样。