【问题标题】:Separate Strings Into A Data Frame将字符串分离到数据框中
【发布时间】:2022-11-03 02:12:11
【问题描述】:

我正在处理如下所示的数据:

id <- c("673506", "624401", "674764")
bills <- c("sb 1181; ab 573; ab 2697", 
           "sb 1181; ab 573; ab 2697; ab 2448", 
           "sb 292; ab 497")

df <- data.frame(id, bills)
df

如何转换数据以使数据长,ID 重复每个相应的账单,用分号分隔?

这样数据看起来像这样:

谢谢!

【问题讨论】:

    标签: r dataframe data-manipulation


    【解决方案1】:

    使用separate_rows

    library(tidyr)
     separate_rows(df, bills, sep = ";\s+")
    

    -输出

    # A tibble: 9 × 2
      id     bills  
      <chr>  <chr>  
    1 673506 sb 1181
    2 673506 ab 573 
    3 673506 ab 2697
    4 624401 sb 1181
    5 624401 ab 573 
    6 624401 ab 2697
    7 624401 ab 2448
    8 674764 sb 292 
    9 674764 ab 497 
    

    【讨论】:

      猜你喜欢
      • 2021-01-21
      • 1970-01-01
      • 2021-10-22
      • 2021-12-10
      • 1970-01-01
      • 2020-01-02
      • 1970-01-01
      • 2018-07-13
      相关资源
      最近更新 更多