dplyr排列不起作用

dplyr排列不起作用,r,dplyr,R,Dplyr,参考问题 我有下面的数据帧,我希望根据h,然后是s,最后是v进行排序 > library(dplyr) > tHSVcol h s v [1,] 0.6229508 0.6421053 0.3725490 [2,] 0.2767296 0.5145631 0.8078431 [3,] 0.1323283 0.7928287 0.9843137 [4,] 0.9790476 0.9510870 0.7215686 [5,] 0.

参考问题

我有下面的数据帧,我希望根据h,然后是s,最后是v进行排序

> library(dplyr)
> tHSVcol
             h         s         v
[1,] 0.6229508 0.6421053 0.3725490
[2,] 0.2767296 0.5145631 0.8078431
[3,] 0.1323283 0.7928287 0.9843137
[4,] 0.9790476 0.9510870 0.7215686
[5,] 0.9093567 0.5480769 0.4078431
当我执行
tHSVcol%>%arrange(desc(h))
时,我得到

使用方法(“排列”)中的错误:没有适用于 应用于“c”类对象的“arrange”('matrix','double', “数字”)“


我做错了什么?

假设您的矩阵名为
m
,您可以执行以下操作:

m[order(m[,"h"], decreasing = T), ]

#             h         s         v
#[1,] 0.9790476 0.9510870 0.7215686
#[2,] 0.9093567 0.5480769 0.4078431
#[3,] 0.6229508 0.6421053 0.3725490
#[4,] 0.2767296 0.5145631 0.8078431
#[5,] 0.1323283 0.7928287 0.9843137

你有一个矩阵。转换为data.frame,它应该可以工作。正如错误所解释的,没有方法处理
矩阵
tHSVcol%>%As.data.frame%>%arrange(desc(h))
谢谢,我们将研究矩阵