Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于列中的最大值排序列-R数据帧排列_R_Dataframe_Sorting_Multiple Columns - Fatal编程技术网

基于列中的最大值排序列-R数据帧排列

基于列中的最大值排序列-R数据帧排列,r,dataframe,sorting,multiple-columns,R,Dataframe,Sorting,Multiple Columns,我有以下数据帧: x <- data.frame("A" = c(NA, NA, 3:10, NA), "B" = c(NA,2:11), "C" = c(2:12)) 由于最大值在C列,下一个最大值在B列,最后一个最大值在A列 我有一个巨大的数据帧,需要自动完成 感谢您使用base R执行此操作: x[names(sort(sapply(x, max, na.rm = T), decreasing = T))] C

我有以下数据帧:

x <- data.frame("A" = c(NA, NA, 3:10, NA), "B" = c(NA,2:11), "C" = c(2:12))
由于最大值在C列,下一个最大值在B列,最后一个最大值在A列

我有一个巨大的数据帧,需要自动完成


感谢您使用base R执行此操作:

x[names(sort(sapply(x, max, na.rm = T), decreasing = T))]
    C  B  A
1   2 NA NA
2   3  2 NA
3   4  3  3
4   5  4  4
5   6  5  5
6   7  6  6
7   8  7  7
8   9  8  8
9  10  9  9
10 11 10 10
11 12 11 NA

我想这就是你想要的

x <- data.frame("A" = c(NA, NA, 3:10, NA), "B" = c(NA,2:11), "C" = c(2:12))
maxx <- sapply(x, function(x) max(x,na.rm = TRUE))
result <- x[,order(-maxx)]
result
    C  B  A
1   2 NA NA
2   3  2 NA
3   4  3  3
4   5  4  4

x这样的解决方案有效吗

x %>% dplyr::arrange(-C,-B,-A)

另请参见问题:[dplyr arrange()函数按缺少的值排序]()

x %>% dplyr::arrange(-C,-B,-A)
x %>% dplyr::arrange(desc(C,B,A))