在R中合并时丢失行
我正在使用包含180K行和27个因子的在R中合并时丢失行,r,merge,rows,R,Merge,Rows,我正在使用包含180K行和27个因子的df1。我在与df2的合并中使用了3个因子(43K obs,10个因子,3个因子与df1匹配)。在df1中,这些行是对TrapLines和TrapNum进行的数月重复观察。有3393个与TrapLines和TrapNum相关的唯一级别。在df2中,TrapLine和Trapnum的Shade按月变化:对于每个TrapLine/Trapnum条目,有12个Shade值。在df2中,有3268个与Trapline/Trapnum相关的唯一级别。我想合并(如果这是
df1
。我在与df2
的合并中使用了3个因子(43K obs,10个因子,3个因子与df1
匹配)。在df1
中,这些行是对TrapLines
和TrapNum
进行的数月重复观察。有3393个与TrapLines
和TrapNum
相关的唯一级别。在df2
中,TrapLine
和Trapnum
的Shade
按月变化:对于每个TrapLine
/Trapnum
条目,有12个Shade
值。在df2
中,有3268个与Trapline
/Trapnum
相关的唯一级别。我想合并(如果这是正确的过程)df1
和df2
,这样每月的Shade
数据就与df1
中正确的Trapline
/TrapNum
相关联
df1:
等等
df2:
等等
我使用了以下代码:
df3 <- merge (df1, df2, by c("TrapLine", "TrapNum", "Month_num"))
df3使用merge
函数的参数all
。默认情况下,all=FALSE
,因此它执行“内部联接”,并删除所有不匹配的观察结果。如果设置merge(…,all=TRUE)
则有一个“外部联接”,并保留所有观察值。请参见谢谢您的解决方案!我在路上……暂时。
TrapLine TrapNum Shade Month Month_num
A24 D101 217 Jan 1
A24 D101 201 Feb 2
A24 D101 172 Mar 3
A24 D102 145 Mar 3
A24 D102 97 Apr 4
A24 D102 59 May 5
df3 <- merge (df1, df2, by c("TrapLine", "TrapNum", "Month_num"))