首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么order(order(x))等于R中的秩(X)?

为什么order(order(x))等于R中的秩(X)?
EN

Stack Overflow用户
提问于 2016-08-16 15:26:52
回答 1查看 339关注 0票数 3

在此post中,声明order(order(x))rank(X)相同。

虽然一些实验证实了这一点。

#why is order(order(x)) == rank(x)?
x <- c(0.2, 0.5, 0.1)
x
## [1] 0.2 0.5 0.1
order(x)
## [1] 3 1 2
rank(x)
## [1] 2 3 1
order(order(x))
## [1] 2 3 1

我不明白如何证明这一点,更好的是,凭直觉。

相关:rank and order in R

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-16 16:06:16

首先,看看由1:10的排列形成的整数序列会发生什么:

>  set.seed(123); x <- sample(10)
> x
 [1]  3  8  4  7  6  1 10  9  2  5
> order(x)
 [1]  6  9  1  3 10  5  4  2  8  7
> order(order(x))
 [1]  3  8  4  7  6  1 10  9  2  5
> rank(x)
 [1]  3  8  4  7  6  1 10  9  2  5

在这种情况下,order-operation是它自己的反面。由于order-operation总是返回从1开始的序列,因此order的任何嵌套奇数应用程序都将返回相同的向量。

Order返回可用于对原始向量进行排序的索引向量。因此,最小项的位置在第一个位置,第二个最小值的位置在下一个位置,...,最后一项是最大项的位置。因此,当您再次对索引向量执行该操作时,第一项现在是最小索引的索引,依此类推……向量的等级。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38968911

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档