是否有R函数可以对包含两个相连元素的列进行排序?

时间:2019-04-12 12:36:01

标签: r dataframe

我想比较两个无向网络的边缘相似度,并列出它们的共享边缘。因此,我想首先对边缘列表进行排序。由于它们是非定向网络,例如

df <- data.frame(x=c("A B", "B A","C A"))

     x

1 A B

2 B A

3 C A

我想对列进行排序以使其类似

 x

1 A B

2 A B

3 A C

有可能吗?还是为此有更好的选择?

1 个答案:

答案 0 :(得分:1)

我们将'x'按空格(' '),paste sort个元素进行分割,并将其分配给列'x'

df$x <- sapply(strsplit(as.character(df$x),  " "), 
           function(x) paste(sort(x), collapse=' '))
df$x
#[1] "A B" "A B" "A C"