這兩個排名函數實現了兩種略有不同的計算百分位數的方法。對於x
中的每個x_i
:
-
cume_dist(x)
計算小於或等於x_i
的值的總數,並將其除以觀測值的數量。 -
percent_rank(x)
計算小於x_i
的值的總數,並將其除以觀測值的數量減 1。
在這兩種情況下,在計算觀測值數量時都會忽略缺失值。
參數
- x
-
用於排名的向量
默認情況下,最小值將獲得最小的排名。使用
desc()
反轉方向,使最大值獲得最小的排名。缺失值將被賦予排名
NA
。如果您想分別將它們視為最大值或最小值,請使用coalesce(x, Inf)
或coalesce(x, -Inf)
。要一次按多列排名,請提供 DataFrame 。
也可以看看
其他排名函數:ntile()
、row_number()
例子
x <- c(5, 1, 3, 2, 2)
cume_dist(x)
#> [1] 1.0 0.2 0.8 0.6 0.6
percent_rank(x)
#> [1] 1.00 0.00 0.75 0.25 0.25
# You can understand what's going on by computing it by hand
sapply(x, function(xi) sum(x <= xi) / length(x))
#> [1] 1.0 0.2 0.8 0.6 0.6
sapply(x, function(xi) sum(x < xi) / (length(x) - 1))
#> [1] 1.00 0.00 0.75 0.25 0.25
# The real computations are a little more complex in order to
# correctly deal with missing values
相關用法
- R dplyr pull 提取單列
- R dplyr pick 選擇列的子集
- R dplyr group_trim 修剪分組結構
- R dplyr slice 使用行的位置對行進行子集化
- R dplyr copy_to 將本地數據幀複製到遠程src
- R dplyr sample_n 從表中采樣 n 行
- R dplyr consecutive_id 為連續組合生成唯一標識符
- R dplyr row_number 整數排名函數
- R dplyr band_members 樂隊成員
- R dplyr mutate-joins 變異連接
- R dplyr nth 從向量中提取第一個、最後一個或第 n 個值
- R dplyr coalesce 找到第一個非缺失元素
- R dplyr group_split 按組分割 DataFrame
- R dplyr mutate 創建、修改和刪除列
- R dplyr order_by 用於排序窗口函數輸出的輔助函數
- R dplyr context 有關“當前”組或變量的信息
- R dplyr recode 重新編碼值
- R dplyr starwars 星球大戰人物
- R dplyr desc 降序
- R dplyr between 檢測值落在指定範圍內的位置
- R dplyr cumall 任何、全部和平均值的累積版本
- R dplyr group_map 對每個組應用一個函數
- R dplyr do 做任何事情
- R dplyr nest_join 嵌套連接
- R dplyr group_by_all 按選擇的變量進行分組
注:本文由純淨天空篩選整理自Hadley Wickham等大神的英文原創作品 Proportional ranking functions。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。