Find all sequences with the same column value

后端 未结 9 897
误落风尘
误落风尘 2020-12-17 18:35

I have the following data frame:

╔══════╦═════════╗
║ Code ║ Airline ║
╠══════╬═════════╣
║    1 ║ AF      ║
║    1 ║ KL      ║
║    8 ║ AR      ║
║    8 ║ A         


        
9条回答
  •  攒了一身酷
    2020-12-17 18:55

    An an igraph approach

    library(igraph)
    
    g <- graph_from_data_frame(dat)
    
    # Find neighbours for select nodes
    ne <- setNames(ego(g,2, nodes=as.character(dat$Airline), mindist=2), dat$Airline)
    ne
    #$`AF  `
    #+ 1/7 vertex, named:
    #[1] KL  
    
    #$`KL  `
    #+ 1/7 vertex, named:
    #[1] AF  
    ---
    ---
    
    # Get final format
    data.frame(Airline=names(ne), 
               Shared=sapply(ne, function(x)
                                          paste(V(g)$name[x], collapse=",")))
    #   Airline Shared
    # 1      AF     KL
    # 2      KL     AF
    # 3      AR  AZ,DL
    # 4      AZ  AR,DL
    # 5      DL  AR,AZ
    

提交回复
热议问题