R中rank函数使用
rank(x, na.last = TRUE,
? ???ties.method = c("average", "first", "random", "max", "min"))
(1) rank 函數(shù)是對一維度數(shù)組、向量x 進行排序。若x 為數(shù)值,則按照小數(shù)在線大數(shù)在后的原則進行排序
P.S. 實際情況中,存在大量用二維表格描述的數(shù)據(jù),比如行表示地點列表示時間的統(tǒng)計表,若進行排序,應(yīng)先通過字符拼接的手段將表格轉(zhuǎn)化為一維的向量,否則結(jié)果將失去意義。
(2) rank 將數(shù)據(jù)分為確定值與缺失值兩種。缺失值可按先后排在確定值之間(na.last = FALSE), 也可排在之后(na.last = TRUE), 也可保留,不參與排序(na.last = "keep").
(3) "first" 是最基本的排序,小數(shù)在前大數(shù)在后,相同元素先者在前后者在后。
"max" 是相同元素都取該組中最好的水平,即通常所講的并列排序。
"min" 是相同元素都取該組中最差的水平,可以增大序列的等級差異。
"average" 是相同元素都取該組中的平均水平,該水平可能是個小數(shù)。
"random" 是相同元素隨機編排次序,避免了“先到先得”,“權(quán)重”優(yōu)于“先后順序”的機制增大了隨機的程度。
比如,在100米賽跑中,甲乙丙三人的成績?yōu)?.8s, 8.1s, 7.2s,那么用rank函數(shù)排序獲得名次:
> rank(t <- c(6.8, 8.1, 7.2)) [1] 1 3 2再如,甲乙丙三人考試得分為74,92,85,用同樣方法取得名次會適得其反。當然,我們可以認為執(zhí)行
> rank(-(s <- c(74, 92, 85))) [1] 3 1 2可以達到目的,但這并未改變rank函數(shù)的排序機制。
總結(jié)
以上是生活随笔為你收集整理的R中rank函数使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java的程序的创建快捷方式_关于Swi
- 下一篇: UiPath-定时任务原理