Statistics

İstatistikler standart kütüphane modülü temel istatistik işlevselliğini içerir.

Statistics.stdFunction
std(itr; corrected::Bool=true, mean=nothing[, dims])

Küme itr'nin örnek standart sapmasını hesaplar.

Algoritma, itr'nin her bir girişinin aynı bilinmeyen dağılımdan çekilmiş bir örnek olduğu varsayımı altında, üretken dağılımın standart sapmasının bir tahmincisini döndürür ve örneklerin birbirleriyle ilişkili olmadığını varsayar. Diziler için bu hesaplama, sqrt(sum((itr .- mean(itr)).^2) / (length(itr) - 1)) hesaplamasına eşdeğerdir. Eğer corrected true ise, toplam n-1 ile ölçeklendirilir; corrected false ise toplam n ile ölçeklendirilir ve burada n, itr'deki eleman sayısını ifade eder.

Eğer itr bir AbstractArray ise, boyutlar üzerinde standart sapmayı hesaplamak için dims sağlanabilir.

Önceden hesaplanmış bir mean sağlanabilir. dims belirtildiğinde, mean mean(itr, dims=dims) ile aynı şekle sahip bir dizi olmalıdır (ekstra son tekil boyutlara izin verilir).

Not

Eğer dizi NaN veya missing değerleri içeriyorsa, sonuç da NaN veya missing olur (missing her ikisi de varsa önceliklidir). missing girişlerini atlamak ve eksik olmayan değerlerin standart sapmasını hesaplamak için skipmissing fonksiyonunu kullanın.

source
Statistics.stdmFunction
stdm(itr, mean; corrected::Bool=true[, dims])

Koleksiyon itr'nin örnek standart sapmasını, bilinen ortalama(lar) mean ile hesaplar.

Algoritma, itr'nin her bir girişinin aynı bilinmeyen dağılımdan çekilmiş bir örnek olduğu varsayımı altında, üretken dağılımın standart sapmasının bir tahmincisini döndürür ve örneklerin birbirleriyle ilişkili olmadığını varsayar. Diziler için bu hesaplama, sqrt(sum((itr .- mean(itr)).^2) / (length(itr) - 1)) hesaplamasıyla eşdeğerdir. Eğer corrected true ise, toplam n-1 ile ölçeklendirilir; corrected false ise toplam n ile ölçeklendirilir, burada n itr'deki eleman sayısını ifade eder.

Eğer itr bir AbstractArray ise, boyutlar üzerinde standart sapmayı hesaplamak için dims sağlanabilir. Bu durumda, mean mean(itr, dims=dims) ile aynı şekle sahip bir dizi olmalıdır (ekstra son tekil boyutlara izin verilir).

Not

Eğer dizi NaN veya missing değerleri içeriyorsa, sonuç da NaN veya missing olacaktır (missing her ikisi de varsa önceliklidir). missing girişlerini atlamak ve eksik olmayan değerlerin standart sapmasını hesaplamak için skipmissing fonksiyonunu kullanın.

source
Statistics.varFunction
var(itr; corrected::Bool=true, mean=nothing[, dims])

itr koleksiyonunun örnek varyansını hesaplayın.

Algoritma, itr'nin her bir girişinin aynı bilinmeyen dağılımdan çekilmiş bir örnek olduğu varsayımı altında, üretken dağılımın varyansının bir tahmincisini döndürür ve örneklerin birbirleriyle ilişkili olmadığı varsayılır. Diziler için bu hesaplama, sum((itr .- mean(itr)).^2) / (length(itr) - 1) hesaplamasıyla eşdeğerdir. Eğer corrected true ise, toplam n-1 ile ölçeklendirilir; corrected false ise toplam n ile ölçeklendirilir; burada n, itr'deki eleman sayısını temsil eder.

Eğer itr bir AbstractArray ise, varyansı boyutlar üzerinde hesaplamak için dims sağlanabilir.

Önceden hesaplanmış bir mean sağlanabilir. dims belirtildiğinde, mean, mean(itr, dims=dims) ile aynı şekle sahip bir dizi olmalıdır (ekstra son tekil boyutlara izin verilir).

Not

Eğer dizi NaN veya missing değerleri içeriyorsa, sonuç da NaN veya missing olur (dizi her ikisini de içeriyorsamissingönceliklidir).missinggirişlerini atlamak ve eksik olmayan değerlerin varyansını hesaplamak için [skipmissing`](@ref) fonksiyonunu kullanın.

source
Statistics.varmFunction
varm(itr, mean; dims, corrected::Bool=true)

Koleksiyon itr'nin örnek varyansını, bilinen ortalama(lar) mean ile hesaplar.

Algoritma, itr'nin her bir girişinin aynı bilinmeyen dağılımdan çekilmiş bir örnek olduğu varsayımı altında, üretken dağılımın varyansının bir tahmincisini döndürür ve örneklerin birbirleriyle ilişkili olmadığı varsayılır. Diziler için bu hesaplama, sum((itr .- mean(itr)).^2) / (length(itr) - 1) hesaplamasına eşdeğerdir. Eğer corrected true ise, toplam n-1 ile ölçeklendirilir; corrected false ise toplam n ile ölçeklendirilir, burada n itr'deki eleman sayısını ifade eder.

Eğer itr bir AbstractArray ise, varyansı boyutlar üzerinde hesaplamak için dims sağlanabilir. Bu durumda, mean mean(itr, dims=dims) ile aynı şekle sahip bir dizi olmalıdır (ekstra son tekil boyutlara izin verilir).

Note

Eğer dizi NaN veya missing değerleri içeriyorsa, sonuç da NaN veya missing olur (missing her ikisi de varsa önceliklidir). missing girişlerini atlamak ve eksik olmayan değerlerin varyansını hesaplamak için skipmissing fonksiyonunu kullanın.

source
Statistics.corFunction
cor(x::AbstractVector)

Bir numara döndür.

source
cor(X::AbstractMatrix; dims::Int=1)

Matris X'in dims boyutu boyunca Pearson korelasyon matrisini hesaplar.

source
cor(x::AbstractVector, y::AbstractVector)

x ve y vektörleri arasındaki Pearson korelasyonunu hesaplar.

source
cor(X::AbstractVecOrMat, Y::AbstractVecOrMat; dims=1)

X ve Y vektörleri veya matrisleri arasında dims boyutu boyunca Pearson korelasyonunu hesaplar.

source
Statistics.covFunction
cov(x::AbstractVector; corrected::Bool=true)

Vektör x'in varyansını hesaplar. Eğer corrected true (varsayılan) ise, toplam n-1 ile ölçeklendirilir; corrected false ise toplam n ile ölçeklendirilir, burada n = length(x).

source
cov(X::AbstractMatrix; dims::Int=1, corrected::Bool=true)

Matris X'in dims boyutu boyunca kovaryans matrisini hesaplar. Eğer corrected true (varsayılan) ise, toplam n-1 ile ölçeklendirilir; corrected false ise toplam n ile ölçeklendirilir, burada n = size(X, dims).

source
cov(x::AbstractVector, y::AbstractVector; corrected::Bool=true)

Vektörler x ve y arasındaki kovaryansı hesaplar. Eğer corrected true (varsayılan) ise, $\frac{1}{n-1}\sum_{i=1}^n (x_i-\bar x) (y_i-\bar y)^*$ hesaplanır; burada $*$ karmaşık konjugatı ve n = length(x) = length(y)'dir. Eğer corrected false ise, $\frac{1}{n}\sum_{i=1}^n (x_i-\bar x) (y_i-\bar y)^*$ hesaplanır.

source
cov(X::AbstractVecOrMat, Y::AbstractVecOrMat; dims::Int=1, corrected::Bool=true)

X ve Y vektörleri veya matrisleri arasında dims boyutu boyunca kovaryansı hesaplar. Eğer corrected true (varsayılan) ise, toplam n-1 ile ölçeklendirilir, corrected false ise toplam n ile ölçeklendirilir; burada n = size(X, dims) = size(Y, dims).

source
Statistics.mean!Function
mean!(r, v)

v'nin r'nin tekil boyutları üzerindeki ortalamasını hesaplayın ve sonuçları r'ye yazın.

Örnekler

julia> using Statistics

julia> v = [1 2; 3 4]
2×2 Matrix{Int64}:
 1  2
 3  4

julia> mean!([1., 1.], v)
2-element Vector{Float64}:
 1.5
 3.5

julia> mean!([1. 1.], v)
1×2 Matrix{Float64}:
 2.0  3.0
source
Statistics.meanFunction
mean(itr)

Bir koleksiyondaki tüm elemanların ortalamasını hesaplayın.

Not

Eğer itr NaN veya missing değerleri içeriyorsa, sonuç da NaN veya missing olacaktır (missing, dizi her ikisini de içeriyorsa önceliklidir). missing girişlerini atlamak ve eksik olmayan değerlerin ortalamasını hesaplamak için skipmissing fonksiyonunu kullanın.

Örnekler

julia> using Statistics

julia> mean(1:20)
10.5

julia> mean([1, missing, 3])
missing

julia> mean(skipmissing([1, missing, 3]))
2.0
source
mean(f, itr)

Koleksiyon itr'nin her bir elemanına f fonksiyonunu uygula ve ortalamasını al.

julia> using Statistics

julia> mean(√, [1, 2, 3])
1.3820881233139908

julia> mean([√1, √2, √3])
1.3820881233139908
source
mean(f, A::AbstractArray; dims)

Dizi A'nın her bir elemanına f fonksiyonunu uygula ve dims boyutları üzerinde ortalamayı al.

Julia 1.3

Bu yöntem en az Julia 1.3 gerektirir.

julia> using Statistics

julia> mean(√, [1, 2, 3])
1.3820881233139908

julia> mean([√1, √2, √3])
1.3820881233139908

julia> mean(√, [1 2 3; 4 5 6], dims=2)
2×1 Matrix{Float64}:
 1.3820881233139908
 2.2285192400943226
source
mean(A::AbstractArray; dims)

Verilen boyutlar üzerinde bir dizinin ortalamasını hesaplayın.

Julia 1.1

Boş diziler için mean en az Julia 1.1 gerektirir.

Örnekler

julia> using Statistics

julia> A = [1 2; 3 4]
2×2 Matrix{Int64}:
 1  2
 3  4

julia> mean(A, dims=1)
1×2 Matrix{Float64}:
 2.0  3.0

julia> mean(A, dims=2)
2×1 Matrix{Float64}:
 1.5
 3.5
source
Statistics.medianFunction
median(itr)

Bir koleksiyondaki tüm elemanların medyanını hesaplar. Eleman sayısı çift olduğunda, tam bir medyan elemanı yoktur, bu nedenle sonuç iki medyan elemanının ortalamasını almakla eşdeğerdir.

Not

Eğer itr NaN veya missing değerleri içeriyorsa, sonuç da NaN veya missing olacaktır (itr hem NaN hem de missing içeriyorsa missing önceliklidir). missing girişlerini atlamak ve eksik olmayan değerlerin medyanını hesaplamak için skipmissing fonksiyonunu kullanın.

Örnekler

julia> using Statistics

julia> median([1, 2, 3])
2.0

julia> median([1, 2, 3, 4])
2.5

julia> median([1, 2, missing, 4])
missing

julia> median(skipmissing([1, 2, missing, 4]))
2.0
source
median(A::AbstractArray; dims)

Verilen boyutlar boyunca bir dizinin medyanını hesaplar.

Örnekler

julia> using Statistics

julia> median([1 2; 3 4], dims=1)
1×2 Matrix{Float64}:
 2.0  3.0
source
Statistics.middleFunction
middle(x)

Bir skalar değerin ortalamasını hesaplar, bu da x'in kendisine eşdeğerdir, ancak tutarlılık için middle(x, x) türündedir.

source
middle(x, y)

İki sayının x ve y ortalamasını hesaplar, bu da değer ve tür açısından onların ortalamasıyla eşdeğerdir ((x + y) / 2).

source
middle(a::AbstractArray)

Bir dizi anın ortasını hesaplayın, bu, onun ekstremalarını bulmayı ve ardından bunların ortalamasını hesaplamayı içerir.

julia> using Statistics

julia> middle(1:10)
5.5

julia> a = [1,2,3.6,10.9]
4-element Vector{Float64}:
  1.0
  2.0
  3.6
 10.9

julia> middle(a)
5.95
source
Statistics.quantile!Function
quantile!([q::AbstractArray, ] v::AbstractVector, p; sorted=false, alpha::Real=1.0, beta::Real=alpha)

Bir vektör v için belirtilen olasılık veya olasılıkların vektörü veya demeti p üzerinde [0,1] aralığında kuantil(ler) hesaplayın. Eğer p bir vektör ise, isteğe bağlı bir çıktı dizisi q de belirtilebilir. (Sağlanmazsa, yeni bir çıktı dizisi oluşturulur.) Anahtar kelime argümanı sorted, v'nin sıralı olduğu varsayımını belirtir; eğer false (varsayılan), o zaman v'nin elemanları yerinde kısmen sıralanacaktır.

Örnek kuantiller Q(p) = (1-γ)*x[j] + γ*x[j+1] ile tanımlanır; burada x[j], v'nin j-inci sıralama istatistiğidir, j = floor(n*p + m), m = alpha + p*(1 - alpha - beta) ve γ = n*p + m - j.

Varsayılan olarak (alpha = beta = 1), kuantiller, ((k-1)/(n-1), x[k]) noktaları arasında lineer interpolasyon ile hesaplanır; burada k = 1:n ve n = length(v). Bu, Hyndman ve Fan (1996) tanım 7'sine karşılık gelir ve R ve NumPy varsayılanı ile aynıdır.

Anahtar kelime argümanları alpha ve beta, Hyndman ve Fan'daki aynı parametrelere karşılık gelir; bunları farklı değerlere ayarlamak, bu makalede tanımlanan 4-9 yöntemleri ile kuantillerin hesaplanmasına olanak tanır:

  • Tanım 4: alpha=0, beta=1
  • Tanım 5: alpha=0.5, beta=0.5 (MATLAB varsayılanı)
  • Tanım 6: alpha=0, beta=0 (Excel PERCENTILE.EXC, Python varsayılanı, Stata altdef)
  • Tanım 7: alpha=1, beta=1 (Julia, R ve NumPy varsayılanı, Excel PERCENTILE ve PERCENTILE.INC, Python 'inclusive')
  • Tanım 8: alpha=1/3, beta=1/3
  • Tanım 9: alpha=3/8, beta=3/8
Not

Eğer v NaN veya missing değerleri içeriyorsa bir ArgumentError fırlatılır.

Kaynaklar

  • Hyndman, R.J ve Fan, Y. (1996) "Sample Quantiles in Statistical Packages", The American Statistician, Cilt. 50, No. 4, ss. 361-365
  • Wikipedia'da Kuantil farklı kuantil tanımlarını detaylandırmaktadır

Örnekler

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
source
Statistics.quantileFunction
quantile(itr, p; sorted=false, alpha::Real=1.0, beta::Real=alpha)

Bir koleksiyon itr için belirtilen olasılık veya olasılıkların vektörü veya demeti p üzerinde [0,1] aralığında kuantil(ler) hesaplayın. Anahtar kelime argümanı sorted, itr'nin sıralı olduğu varsayımında bulunulup bulunulamayacağını belirtir.

Örnek kuantiller, Q(p) = (1-γ)*x[j] + γ*x[j+1] ile tanımlanır; burada x[j], itr'nin j-inci sıralama istatistiğidir, j = floor(n*p + m), m = alpha + p*(1 - alpha - beta) ve γ = n*p + m - j.

Varsayılan olarak (alpha = beta = 1), kuantiller, ((k-1)/(n-1), x[k]) noktaları arasında lineer interpolasyon yoluyla hesaplanır; burada k = 1:n ve n = length(itr). Bu, Hyndman ve Fan (1996)'nın Tanım 7'sine karşılık gelir ve R ve NumPy varsayılanı ile aynıdır.

Anahtar kelime argümanları alpha ve beta, Hyndman ve Fan'daki aynı parametrelere karşılık gelir; bunları farklı değerlere ayarlamak, bu makalede tanımlanan 4-9 yöntemleri ile kuantillerin hesaplanmasına olanak tanır:

  • Tanım 4: alpha=0, beta=1
  • Tanım 5: alpha=0.5, beta=0.5 (MATLAB varsayılanı)
  • Tanım 6: alpha=0, beta=0 (Excel PERCENTILE.EXC, Python varsayılanı, Stata altdef)
  • Tanım 7: alpha=1, beta=1 (Julia, R ve NumPy varsayılanı, Excel PERCENTILE ve PERCENTILE.INC, Python 'inclusive')
  • Tanım 8: alpha=1/3, beta=1/3
  • Tanım 9: alpha=3/8, beta=3/8
Not

Eğer v NaN veya missing değerleri içeriyorsa bir ArgumentError fırlatılır. missing girişlerini atlamak ve eksik olmayan değerlerin kuantillerini hesaplamak için skipmissing fonksiyonunu kullanın.

Kaynaklar

  • Hyndman, R.J ve Fan, Y. (1996) "Statistik Paketlerinde Örnek Kuantilleri", The American Statistician, Cilt. 50, No. 4, ss. 361-365
  • Wikipedia'da Kuantil farklı kuantil tanımlarını detaylandırmaktadır

Örnekler

julia> using Statistics

julia> quantile(0:20, 0.5)
10.0

julia> quantile(0:20, [0.1, 0.5, 0.9])
3-element Vector{Float64}:
  2.0
 10.0
 18.000000000000004

julia> quantile(skipmissing([1, 10, missing]), 0.5)
5.5
source