转置小标题

Giu*_*one 5 r dplyr tibble

我有这个小题:

tibble(Cor = c("Linear", "Rank"),
       `a,b` =  c("x1","x2"),
       `b,c` = c("x3","x4")
)
Run Code Online (Sandbox Code Playgroud)

我想把它转变成这个小标题:

tibble(Cor = c("a,b","b,c"),
       Linear = c("x1","x3"),
       Rank = c("x2","x4")
)
Run Code Online (Sandbox Code Playgroud)

有没有一个 tidyverse 简单命令可以做到这一点?

Jon*_*ing 5

tidyr我们可以使用'spivot_longer和分两步完成pivot_wider

df %>%  
  pivot_longer(-Cor) %>%   
  pivot_wider(names_from = Cor, values_from = value) 
Run Code Online (Sandbox Code Playgroud)


akr*_*run 3

我们可以用data.table::transpose

\n
as_tibble(data.table::transpose(dat, make.names = 'Cor', keep.names = 'Cor'))\n # A tibble: 2 \xc3\x97 3\n  Cor   Linear Rank \n  <chr> <chr>  <chr>\n1 a,b   x1     x2   \n2 b,c   x3     x4   \n
Run Code Online (Sandbox Code Playgroud)\n

数据

\n
dat <- tibble(Cor = c("Linear", "Rank"),\n       `a,b` =  c("x1","x2"),\n       `b,c` = c("x3","x4")\n)\n
Run Code Online (Sandbox Code Playgroud)\n