关于合并两个长度不等的数据集,我有一个非常基本的问题.一个是标准小组
ID Time
1 1
1 2
1 3
2 1
2 2
2 3
Run Code Online (Sandbox Code Playgroud)
第二组长度不等,看起来像这样
ID Time X
1 2 2
2 1 3
2 3 4
Run Code Online (Sandbox Code Playgroud)
如何通过ID和时间将这两者结合起来
ID Time X
1 1 NA
1 2 2
1 3 NA
2 1 3
2 2 NA
2 3 4
Run Code Online (Sandbox Code Playgroud)
dic*_*koa 10
您好,您可以查看合并功能中的all.x或all.y选项.
Data1 <- data.frame(ID = rep(c(1,2), each = 3),
Time = rep(c(1, 2, 3), 2))
Data2 <- data.frame(ID = c(1, 2, 2),
Time = c(2, 1, 3),
X = c(2, 3, 4))
merge(Data2, Data1, all.y = TRUE)
ID Time X
1 1 1 NA
2 1 2 2
3 1 3 NA
4 2 1 3
5 2 2 NA
6 2 3 4
Run Code Online (Sandbox Code Playgroud)
或使用plyr函数join比合并更快但缺少一些选项:
join(Data2, Data1, type = "full")
Joining by: ID, Time
ID Time X
1 1 2 2
2 2 1 3
3 2 3 4
4 1 1 NA
5 1 3 NA
6 2 2 NA
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2870 次 |
| 最近记录: |