-1

我有两个不同的数据集以列格式排列,如下所示:

数据集 1:

A   B   C   D   E

13  1   1.7 2   1
13  2   5.3 2   1
13  2   2   2   1
13  2   1.8 2   1
1   6   27  9   1
1   6   6.6 9   1
1   7   17  9   1
1   7   7.1 9   1
1   7   8.5 9   1

数据集 2:

A   B   F   G
13  1   42  1002
13  2   42  1002
13  2   42  1002
13  2   42  1002
13  3   42  1002
13  4   42  1002
13  5   42  1002
1   2   27  650
1   3   27  650
1   4   27  650
1   6   27  650
1   7   27  650
1   7   27  650
1   7   27  650
1   8   27  650

两个数据集的行号都是可变的,但它们包含两个样本的数据(例如,A 列:两个数据集的 13 和 1)。我希望将数据集 1 的 CD 和 E 值放在数据集 2 中,这两个数据集中的 A 和 B 值相同。因此,加入应该基于 A 和 B。我需要对大约 47560 行执行此操作。

我是 R 的新手,所以如果我能获得在 R 中保存新合并数据集的代码,我应该很感激。

4

1 回答 1

4

使用 R 中的合并函数。

参考来自: http: //www.statmethods.net/management/merging.html

编辑:所以首先你需要读入数据集,CSV 是一种很好的格式。

> dataset1 <- read.csv(file="dataset1.csv", head=TRUE, sep=",") 
> dataset2 <- read.csv(file="dataset2.csv", head=TRUE, sep=",")

如果您现在只需键入变量名称并按回车键,您应该会看到数据集的读数。所以...

> dataset1

应该读出你上面的数据。然后我相信应该发生以下情况......我可能是错的......

> dataset1_2 <- merge(dataset1, dataset2, by=c("A","B"))

编辑 2:

> write.table(dataset1_2, "c:/dataset1_2.txt", sep=" ")

参考: http: //www.statmethods.net/input/exportingdata.html

于 2013-06-23T05:44:05.930 回答