sort()在重新训练方面是否很差,因为它以数字向量的形式返回顺序?
我很快就了解到,{dplyr}中的arrange()比sort()更适合我的分析。奇怪的是,sort()函数返回的对象是数值类。例如:sort()在重新训练方面是否很差,因为它以数字向量的形式返回顺序?,r,R,我很快就了解到,{dplyr}中的arrange()比sort()更适合我的分析。奇怪的是,sort()函数返回的对象是数值类。例如: df <- data.frame(a=round(rpois(10,10)), b=LETTERS[1:10], stringsAsFactors = F) df a b 1 13 A 2 7 B 3 11 C 4 6 D 5 10 E 6 10 F 7 10 G 8 6 H 9 11 I 10 9 J 如果我尝试对原始
df <- data.frame(a=round(rpois(10,10)), b=LETTERS[1:10], stringsAsFactors = F)
df
a b
1 13 A
2 7 B
3 11 C
4 6 D
5 10 E
6 10 F
7 10 G
8 6 H
9 11 I
10 9 J
如果我尝试对原始数据帧进行排序,排序将执行什么操作
df[sort(df[,1]),]
a b
6 10 F
6.1 10 F
7 10 G
9 11 I
10 9 J
10.1 9 J
10.2 9 J
NA NA <NA>
NA.1 NA <NA>
NA.2 NA <NA>
我想知道当我尝试使用sort()重新排列时发生了什么。
谢谢。我们可以使用
订单
提供索引
df[order(-df$a),]
如果我们使用的是排序
,请使用索引。将
选项返回为TRUE
df[sort(df$a, decreasing = TRUE, index.return = TRUE)$ix,]
这与问题有些相切,但使用顺序有一个缺点
sort
允许您进行部分排序,(sort.list
将partial作为参数,但它还不受支持)@Shape谢谢您的评论。很高兴了解部分排序
df[order(-df$a),]
df[sort(df$a, decreasing = TRUE, index.return = TRUE)$ix,]