Nat*_*Nat 1 if-statement r match dataframe
我有一个数据框 (X),看起来像
ID1 ID2
1 5
1 2
1 3
2 3
3 4
Run Code Online (Sandbox Code Playgroud)
另一个(Y)看起来像
ID GROUP
1 5
2 5
3 6
4 6
Run Code Online (Sandbox Code Playgroud)
我正在尝试比较和计算数据帧 X 中同一行中的 ID,它们是否位于数据帧 Y 中列出的同一组中?
例如:
ID1 ID2 SAME.GROUP
1 2 YES
2 3 NO
3 4 YES
Run Code Online (Sandbox Code Playgroud)
我在匹配一列之前已经完成了此操作,但不知道如何同时完成这两件事。提前致谢
您可以使用match:
transform(X, SAME.GROUP = Y$GROUP[match(X$ID1, Y$ID)] == Y$GROUP[match(X$ID2, Y$ID)])
Run Code Online (Sandbox Code Playgroud)
ID1 ID2 SAME.GROUP
1 1 2 TRUE
2 2 3 FALSE
3 3 4 TRUE
Run Code Online (Sandbox Code Playgroud)
数据
X <- read.table(header = T, text = "ID1 ID2
1 2
2 3
3 4")
Y <- read.table(header = T, text = "ID GROUP
1 5
2 5
3 6
4 6
")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
112 次 |
| 最近记录: |