我有一个由对组成的数据框,它看起来像这样:

Col_1  Col_2

A      B
B      G
A      C
D      F
E      F


现在,从这个成对的数据框中,我想创建一个列表作为输出,如下所示:

output[[1]]
> A B G C

output[[2]]
> D F E


输出的顺序无关紧要(所有元素和元素内)

我写了一些冗长的代码,对我来说似乎效率很低。 (如果有人希望看到它,我很乐意分享)是否有解决此问题的有效方法?

最佳答案

一种方法涉及igraph库:

clusters <- clusters(graph.data.frame(df, directed = FALSE))$membership
split(names(clusters), clusters)

$`1`
[1] "A" "B" "G" "C"

$`2`
[1] "D" "E" "F"

关于r - 优化:以最优化的方式创建集群列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58088204/

10-12 17:10