【问题标题】:Is there a way in R to create a table from an edge list that lists all connections for a node in a single string?R 中是否有一种方法可以从边缘列表创建一个表,该表在单个字符串中列出节点的所有连接?
【发布时间】:2023-02-26 00:38:13
【问题描述】:

我有一个边缘列表,其中包含组织名称及其与其他组织的联系。我想知道 R 中是否有一种有效的方法来创建一个表,其中一列列出传出节点,另一列包含一个包含所有传入节点的字符串。

所以基本上来自:

Column A Column B
A C
A D
B C

Column A Column B
A C, D
B C

我尝试使用 Melt 和 Cast 进行各种操作,但无法使其与字符串一起正常工作。

【问题讨论】:

    标签: r datatable


    【解决方案1】:

    根据您想要的输出,我们可以使用 dplyr 中的 group_by 函数对 A 列进行分组,并在 B 列中创建以逗号分隔的值:

    library(tidyverse)
    # your sample data
    df <- data.frame(
      Column_A = c("A", "A", "B"),
      Column_B = c("C", "D", "C")
    )
    
    # Grouping column A using group_by function from dplyr and make comma-separated values in Column B
    df <- df %>%
      group_by(Column_A) %>%
      summarize(Column_B = paste(Column_B, collapse = ", "))
    
    # Renaming your column names
    names(df) <- c("Column A", "Column B")
    
    df<-as.data.frame(df)
    df
      Column A Column B
    1        A     C, D
    2        B        C
    

    【讨论】:

      猜你喜欢
      • 2023-03-28
      • 1970-01-01
      • 1970-01-01
      • 2011-03-25
      • 1970-01-01
      • 2014-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多