Следующий код может переставлять столбцы, если кто-то заранее знает, какие столбцы доступны, но что если кто-то захочет переставить столбцы в порядке убывания / возрастания?В StackOverflow есть несколько похожих сообщений, но ни одна из них не может сделать это без предварительного знания доступных столбцов.
type value
1 rna 1
2 rna 2
3 rna 3
4 dna 20
5 dna 30
d<- data.frame (type=c("rna","rna","rna"), value = c(1,2,3) )
d2 <- data.frame (type=c("dna","dna"), value = c(20,30) )
df <- rbind (d,d2)
library(dplyr)
df %>%
group_by(type) %>%
summarise_all(sum) %>%
data.frame() %>%
arrange(desc(value)) %>% # reorder row
select_(.dots = c("value","type") ) # reorder column