【发布时间】:2021-10-24 21:12:47
【问题描述】:
假设我们有一个tibble,如下所示。理论上,第一列只是一个rownames,它必须与列名一一对应。
例如,排除第一列(row_name),左起第三列命名为G,但对应的行为E。
我想知道如何重新排序行(例如,将标题为 G 的行向上调出两行)以使行和列匹配?
out <- tibble(row_name=factor(c("A","B","E","F","G")),`A`=as.character(1:5),`B`=as.character(c(2,NA,0:2)),
`G`=as.character(4:8),`E`=as.character(4:8),`F`=as.character(4:8))
# row_name A B G E F
# <fct> <chr> <chr> <chr> <chr> <chr>
#1 A 1 2 4 4 4
#2 B 2 NA 5 5 5
#3 E 3 0 6 6 6
#4 F 4 1 7 7 7
#5 G 5 2 8 8 8
# EXPECTED OUTPUT:
# row_name A B G E F
# <fct> <chr> <chr> <chr> <chr> <chr>
#1 A 1 2 4 4 4
#2 B 2 NA 5 5 5
#5 G 5 2 8 8 8
#3 E 3 0 6 6 6
#4 F 4 1 7 7 7
【问题讨论】:
标签: r function dplyr tidyverse tibble