R 合并总体上共享公共元素但不直接共享的对
我有一个数据框,列出了以下数据对:R 合并总体上共享公共元素但不直接共享的对,r,R,我有一个数据框,列出了以下数据对: groupA groupB 7 57 7 93 93 203 203 301 301 407 383 567 ... ... 例如,7和93通过203连接到301和407 我想要的输出是这样的: [1] 7 57 93 203 301 407 [2] 383 567 ... 当我开始在R中编写解决方案时,我开始认为应该用递归来解决它(我在这方面很糟糕)。这个问题让我想起了“六度分离”之类的
groupA groupB
7 57
7 93
93 203
203 301
301 407
383 567
... ...
例如,7和93通过203连接到301和407
我想要的输出是这样的:
[1] 7 57 93 203 301 407
[2] 383 567
...
当我开始在R
中编写解决方案时,我开始认为应该用递归来解决它(我在这方面很糟糕)。这个问题让我想起了“六度分离”之类的事情。不管是哪种方式,我认为这会比结果容易得多
我在其他语言中偶然发现了一些解决方案,但我想知道是否有人在R中处理过类似的问题
感谢您。原则上,您希望在有向图中连接组件。 如果
df1
是带有“连接”的数据帧:
将结果格式化:
tbl1 <- cbind( V(g1)$name, cl1$membership )
split(tbl1[,1], tbl1[,2])
# $`1`
# [1] "7" "93" "203" "301" "57" "407"
#
# $`2`
# [1] "383" "567"
tbl1
cl1 <- clusters(g1)
tbl1 <- cbind( V(g1)$name, cl1$membership )
split(tbl1[,1], tbl1[,2])
# $`1`
# [1] "7" "93" "203" "301" "57" "407"
#
# $`2`
# [1] "383" "567"