當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Julia Statistics.quantile!用法及代碼示例


用法:

quantile!([q::AbstractArray, ] v::AbstractVector, p; sorted=false, alpha::Real=1.0, beta::Real=alpha)

在區間 [0,1] 上以指定的概率或概率的向量或元組 p 計算向量 v 的分位數。如果p 是向量,則還可以指定可選的輸出數組q。 (如果未提供,則創建一個新的輸出數組。)關鍵字參數sorted 指示是否可以假定v 已排序;如果false(默認),那麽v的元素將部分就地排序。

默認情況下(alpha = beta = 1),分位數通過點之間的線性插值計算 ((k-1)/(n-1), v[k]) ,對於 k = 1:n 其中 n = length(v) 。這對應於 Hyndman 和 Fan (1996) 的定義 7,並且與 R 和 NumPy 默認值相同。

關鍵字參數 alphabeta 對應於 Hyndman 和 Fan 中的相同參數,將它們設置為不同的值允許使用本文定義的任何方法 4-9 計算分位數:

  • 定義。 4:alpha=0beta=1
  • 定義。 5:alpha=0.5beta=0.5
  • 定義。 6:alpha=0beta=0(Excel PERCENTILE.EXC,Python 默認,Stata altdef)
  • 定義。 7:alpha=1beta=1(Julia、R 和 NumPy 默認,Excel PERCENTILEPERCENTILE.INC,Python 'inclusive')
  • 定義。 8:alpha=1/3beta=1/3
  • 定義。 9:alpha=3/8beta=3/8

注意

如果 v 包含 NaN missing 值,則會引發 ArgumentError

參考

  • Hyndman, R.J 和 Fan, Y. (1996)“統計包中的樣本分位數”,The American Statistician,卷。 50,第 4 期,第 361-365 頁

  • Quantile on Wikipedia詳細說明了不同的分位數定義

例子

julia> using Statistics

julia> x = [3, 2, 1];

julia> quantile!(x, 0.5)
2.0

julia> x
3-element Vector{Int64}:
 1
 2
 3

julia> y = zeros(3);

julia> quantile!(y, x, [0.1, 0.5, 0.9]) === y
true

julia> y
3-element Vector{Float64}:
 1.2000000000000002
 2.0
 2.8000000000000003

相關用法


注:本文由純淨天空篩選整理自julialang.org 大神的英文原創作品 Statistics.quantile! — Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。