1
我試圖使用R中的Reduce
函數在多個數據框中使用merge
函數。問題是,我想使用合併函數add=T
,並且似乎沒有在高階Reduce
函數中指定此函數。用R的額外參數減少R
所以我想:
a <- data.frame(id=c(1, 2, 3, 4), a=c('a', 'b', 'c', 'd'))
b <- data.frame(id=c(1, 2, 5, 6), b=c('a', 'b', 'e', 'f'))
c <- data.frame(id=c(3, 4, 5, 6), c=c('c', 'd', 'e', 'f'))
out <- Reduce(merge, list(a, b, c), add=T)
out
id a b c
1 1 a a <NA>
2 2 b b <NA>
3 3 c <NA> c
4 4 d <NA> d
5 5 <NA> e e
6 6 <NA> e e
但由於merge
默認爲add=F
,就是我得到的是:
[1] id a b c
<0 rows> (or 0-length row.names)