【问题标题】:R: Move column names and values to rows [duplicate]R:将列名和值移动到行[重复]
【发布时间】:2020-08-25 22:00:06
【问题描述】:

我有一个这样的数据框df1

A    B    C
d    1    4
d    3    5 
e    2    6
e    1    4

我喜欢将BC 的列名+ 值移动到新列R1R2 下的行中:

A    R1   R2
d    B    1
d    C    4
d    B    3 
d    C    5
e    B    2
e    C    6
e    B    1
e    C    4

提前致谢

【问题讨论】:

    标签: r


    【解决方案1】:

    使用tidyr::pivot_longer 可以这样实现:

    d <- read.table(text = "A    B    C
    d    1    4
    d    3    5 
    e    2    6
    e    1    4", header = TRUE)
    d
    #>   A B C
    #> 1 d 1 4
    #> 2 d 3 5
    #> 3 e 2 6
    #> 4 e 1 4
    tidyr::pivot_longer(d, -A, names_to = "R1", values_to = "R2")
    #> # A tibble: 8 x 3
    #>   A     R1       R2
    #>   <chr> <chr> <int>
    #> 1 d     B         1
    #> 2 d     C         4
    #> 3 d     B         3
    #> 4 d     C         5
    #> 5 e     B         2
    #> 6 e     C         6
    #> 7 e     B         1
    #> 8 e     C         4
    

    【讨论】:

      猜你喜欢
      • 2017-12-04
      • 1970-01-01
      • 1970-01-01
      • 2016-07-23
      • 1970-01-01
      • 1970-01-01
      • 2021-11-03
      • 1970-01-01
      • 2021-10-20
      相关资源
      最近更新 更多