我有两个不同长度的表,我需要将它们合并为两个常见的列(季节和客户端),并在没有共同元素的情况下用NA填充单元格.下面我展示了我需要的两张原始表和最终表中的一小部分.我尝试了许多没有成功的事情.
season client.ID qtty
1998 13 30
1999 13 30
2000 13 29
1998 28 18
1999 28 18
2000 28 18
1998 35 21
1999 35 21
2000 35 21
season client.ID vessel.ID overLength
1998 28 29 17.1
1998 28 1809 4.26
1998 28 2215 9.45
1998 28 4173 5.8
1998 28 8151 4.5
1999 28 29 17.1
1999 28 1809 4.26
1999 28 2215 9.45
1999 28 4173 5.8
1999 28 8151 4.5
2000 28 29 17.1
2000 28 1809 4.26
2000 28 2215 9.45
2000 28 4173 5.8
2000 28 8151 4.5
1998 35 36 9.91
1999 35 36 9.91
2000 35 36 9.91
1998 35 40 9.91
1999 35 40 9.91
2000 35 40 9.91
season client.ID vessel.ID overLength qtty
1998 13 NA NA 30
1999 13 NA NA 30
2000 13 NA NA 29
1998 28 29 17.1 18
1998 28 1809 4.26 18
1998 28 2215 9.45 18
1998 28 4173 5.8 18
1998 28 8151 4.5 18
1999 28 29 17.1 18
1999 28 1809 4.26 18
1999 28 2215 9.45 18
1999 28 4173 5.8 18
1999 28 8151 4.5 18
2000 28 29 17.1 18
2000 28 1809 4.26 18
2000 28 2215 9.45 18
2000 28 4173 5.8 18
2000 28 8151 4.5 18
1998 35 36 9.91 21
1999 35 36 9.91 21
2000 35 36 9.91 21
1998 35 40 9.91 21
1999 35 40 9.91 21
2000 35 40 9.91 21
Run Code Online (Sandbox Code Playgroud)
这是一个简单的情况下merge与all = TRUE
假设您的数据在data1和data2
然后
merge(data1, data2, all = TRUE)
Run Code Online (Sandbox Code Playgroud)
应该管用.
如果要指定要合并的内容(如果存在您不想使用的常见列)
merge(data1, data2, all = TRUE, by = c('season', 'client.ID'))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11563 次 |
| 最近记录: |