2
我有一個列表,其中包含多個不同大小的數據框(本示例中只有2個)。省略列表中所有data.frames中的行,不共享公共ID的行
> myList
$`1`
ID values
1 1 100
2 2 200
3 3 240
4 4 403
5 5 212
6 6 432
7 7 423
8 8 123
9 9 543
10 10 982
$`2`
ID values
1 3 432
2 5 333
3 6 981
現在,我需要省略所有行的任何不以任何其他數據幀的分享他們的ID
數據幀。在這個例子中,我正在尋找的結果是:
> myList2
$`1`
ID values
3 3 240
5 5 212
6 6 432
$`2`
ID values
1 3 432
2 5 333
3 6 981
我試着使用dplyr::setequal()
但FALSE: Different number of rows
結束。如果可能,我更喜歡基礎解決方案。提前致謝!
重現的代碼:
myList <- list(data.frame('ID' = c(1:10), 'values' = c(100,200,240,403,212,432,423,123,543,982)),data.frame('ID' = c(3,5,6), 'values' = c(432,333,981)))
謝謝你,那上面的工作完美的例子,但不知何故,它不符合我的實際數據: –
' 的2 1 $列表: 'data.frame':\t 735 OBS。 53個變量: .. $ obsId:chr [1:735]「15597」「15598」「15599」「15600」... .. $ subjectId:num [1:735] 2230 2231 2233 2232 2235 .. .. $ procedureSampleId:num [1:735] 6 6 6 6 6 6 6 6 6 ... $ 2:'data.frame':\t 8 obs。 53個變量: .. $ obsId:chr [1:8]「15628」「15707」「15828」「15938」... .. $ subjectId:num [1:8] 2260 2338 2458 2567 2687 .. .. $ procedureSampleId:num [1:8] 6 6 6 6 6 6 6 6 ' –
什麼是錯誤? – Sotos