Statistics

통계 표준 라이브러리 모듈은 기본 통계 기능을 포함합니다.

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

컬렉션 itr의 샘플 표준 편차를 계산합니다.

이 알고리즘은 itr의 각 항목이 동일한 알려지지 않은 분포에서 추출된 샘플이라는 가정 하에 생성 분포의 표준 편차 추정치를 반환하며, 샘플은 상관관계가 없습니다. 배열의 경우, 이 계산은 sqrt(sum((itr .- mean(itr)).^2) / (length(itr) - 1))를 계산하는 것과 동일합니다. correctedtrue이면 합계는 n-1로 조정되며, correctedfalse이면 합계는 n으로 조정되며, 여기서 nitr의 요소 수입니다.

itrAbstractArray인 경우, 차원에 대해 표준 편차를 계산하기 위해 dims를 제공할 수 있습니다.

미리 계산된 mean을 제공할 수 있습니다. dims가 지정되면, meanmean(itr, dims=dims)와 동일한 형태의 배열이어야 합니다(추가적인 후행 단일 차원은 허용됩니다).

Note

배열에 NaN 또는 missing 값이 포함된 경우, 결과도 NaN 또는 missing이 됩니다(missing이 두 가지 모두 포함된 경우 우선합니다). skipmissing 함수를 사용하여 missing 항목을 생략하고 비어 있지 않은 값의 표준 편차를 계산하십시오.

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

컬렉션 itr의 샘플 표준 편차를 알려진 평균 mean으로 계산합니다.

이 알고리즘은 itr의 각 항목이 동일한 알려지지 않은 분포에서 추출된 샘플이라고 가정할 때 생성 분포의 표준 편차 추정치를 반환합니다. 샘플은 서로 상관이 없다고 가정합니다. 배열의 경우, 이 계산은 sqrt(sum((itr .- mean(itr)).^2) / (length(itr) - 1))를 계산하는 것과 동일합니다. correctedtrue이면 합계는 n-1로 조정되며, correctedfalse이면 합계는 n으로 조정됩니다. 여기서 nitr의 요소 수입니다.

itrAbstractArray인 경우, 차원에 대해 표준 편차를 계산하기 위해 dims를 제공할 수 있습니다. 이 경우 meanmean(itr, dims=dims)와 동일한 형태의 배열이어야 합니다(추가적인 후행 단일 차원은 허용됩니다).

Note

배열에 NaN 또는 missing 값이 포함된 경우 결과도 NaN 또는 missing이 됩니다(missing이 두 가지가 모두 포함된 경우 우선합니다). skipmissing 함수를 사용하여 missing 항목을 생략하고 비어 있지 않은 값의 표준 편차를 계산하십시오.

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

컬렉션 itr의 샘플 분산을 계산합니다.

이 알고리즘은 itr의 각 항목이 동일한 알려지지 않은 분포에서 추출된 샘플이라는 가정 하에 생성 분포의 분산 추정치를 반환하며, 샘플은 서로 독립적입니다. 배열의 경우, 이 계산은 sum((itr .- mean(itr)).^2) / (length(itr) - 1)을 계산하는 것과 동일합니다. correctedtrue이면 합계는 n-1로 조정되며, correctedfalse이면 합계는 n으로 조정됩니다. 여기서 nitr의 요소 수입니다.

itrAbstractArray인 경우, 차원에 대해 분산을 계산하기 위해 dims를 제공할 수 있습니다.

미리 계산된 mean을 제공할 수 있습니다. dims가 지정되면, meanmean(itr, dims=dims)와 동일한 형태의 배열이어야 합니다(추가적인 후행 단일 차원은 허용됩니다).

Note

배열에 NaN 또는 missing 값이 포함된 경우, 결과도 NaN 또는 missing이 됩니다(missing이 두 가지가 모두 포함된 경우 우선합니다). skipmissing 함수를 사용하여 missing 항목을 생략하고 비어 있지 않은 값의 분산을 계산하십시오.

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

컬렉션 itr의 샘플 분산을 알려진 평균 mean으로 계산합니다.

이 알고리즘은 itr의 각 항목이 동일한 알려지지 않은 분포에서 추출된 샘플이라는 가정 하에 생성 분포의 분산 추정치를 반환하며, 샘플은 서로 독립적입니다. 배열의 경우, 이 계산은 sum((itr .- mean(itr)).^2) / (length(itr) - 1)을 계산하는 것과 동일합니다. correctedtrue이면 합계는 n-1로 조정되며, correctedfalse이면 합계는 n으로 조정되며, 여기서 nitr의 요소 수입니다.

itrAbstractArray인 경우, 차원에 대해 분산을 계산하기 위해 dims를 제공할 수 있습니다. 이 경우, meanmean(itr, dims=dims)와 동일한 형태의 배열이어야 합니다(추가적인 후행 단일 차원은 허용됩니다).

Note

배열에 NaN 또는 missing 값이 포함된 경우, 결과도 NaN 또는 missing이 됩니다(missing이 두 가지가 모두 포함된 경우 우선합니다). skipmissing 함수를 사용하여 missing 항목을 생략하고 비어 있지 않은 값의 분산을 계산하십시오.

source
Statistics.corFunction
cor(x::AbstractVector)

Return the number one.

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

행렬 X의 피어슨 상관 행렬을 차원 dims에 따라 계산합니다.

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

벡터 xy 사이의 피어슨 상관관계를 계산합니다.

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

벡터 또는 행렬 XY 간의 피어슨 상관관계를 차원 dims에 따라 계산합니다.

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

벡터 x의 분산을 계산합니다. correctedtrue(기본값)인 경우 합계는 n-1로 조정되며, correctedfalse인 경우 합계는 n으로 조정됩니다. 여기서 n = length(x)입니다.

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

행렬 X의 공분산 행렬을 차원 dims에 따라 계산합니다. correctedtrue(기본값)인 경우 합계는 n-1로 조정되며, correctedfalse인 경우 합계는 n으로 조정됩니다. 여기서 n = size(X, dims)입니다.

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

벡터 xy 사이의 공분산을 계산합니다. correctedtrue(기본값)인 경우, $\frac{1}{n-1}\sum_{i=1}^n (x_i-\bar x) (y_i-\bar y)^*$를 계산하며, 여기서 $*$는 복소수 켤레를 나타내고 n = length(x) = length(y)입니다. correctedfalse인 경우, $\frac{1}{n}\sum_{i=1}^n (x_i-\bar x) (y_i-\bar y)^*$를 계산합니다.

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

벡터 또는 행렬 XY 간의 공분산을 차원 dims에 따라 계산합니다. correctedtrue(기본값)인 경우 합계는 n-1로 조정되며, correctedfalse인 경우 합계는 n으로 조정됩니다. 여기서 n = size(X, dims) = size(Y, dims)입니다.

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

v의 평균을 r의 단일 차원에 대해 계산하고 결과를 r에 기록합니다.

예제

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)

모음의 모든 요소의 평균을 계산합니다.

Note

만약 itrNaN 또는 missing 값이 포함되어 있다면, 결과도 NaN 또는 missing이 됩니다 (missing이 배열에 둘 다 포함되어 있을 경우 우선합니다). skipmissing 함수를 사용하여 missing 항목을 생략하고 비어 있지 않은 값의 평균을 계산하십시오.

예제

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)

함수 f를 컬렉션 itr의 각 요소에 적용하고 평균을 구합니다.

julia> using Statistics

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

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

함수 f를 배열 A의 각 요소에 적용하고 차원 dims에 대해 평균을 구합니다.

Julia 1.3

이 메서드는 최소한 Julia 1.3이 필요합니다.

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)

주어진 차원에 대해 배열의 평균을 계산합니다.

Julia 1.1

빈 배열에 대한 mean은 최소한 Julia 1.1이 필요합니다.

예제

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)

모든 요소의 중앙값을 계산합니다. 요소의 수가 짝수인 경우 정확한 중앙값 요소가 존재하지 않으므로 결과는 두 중앙값 요소의 평균을 계산하는 것과 같습니다.

Note

itrNaN 또는 missing 값이 포함된 경우 결과도 NaN 또는 missing입니다(itr에 둘 다 포함된 경우 missing이 우선합니다). skipmissing 함수를 사용하여 missing 항목을 생략하고 비어 있지 않은 값의 중앙값을 계산하십시오.

예제

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)

주어진 차원에 따라 배열의 중앙값을 계산합니다.

예제

julia> using Statistics

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

스칼라 값의 중간값을 계산합니다. 이는 x 자체와 동일하지만 일관성을 위해 middle(x, x)의 유형입니다.

source
middle(x, y)

두 숫자 xy의 중간값을 계산합니다. 이는 두 숫자의 평균((x + y) / 2)을 계산하는 것과 값과 타입 모두에서 동일합니다.

source
middle(a::AbstractArray)

배열 a의 중간값을 계산합니다. 이는 배열의 극값을 찾고 그 평균을 계산하는 것입니다.

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)

벡터 v의 분위수를 지정된 확률 또는 확률의 벡터 또는 튜플 p에 대해 [0,1] 구간에서 계산합니다. p가 벡터인 경우, 선택적으로 출력 배열 q를 지정할 수 있습니다. (제공되지 않으면 새 출력 배열이 생성됩니다.) 키워드 인수 sortedv가 정렬되어 있다고 가정할 수 있는지를 나타냅니다. false(기본값)인 경우, v의 요소는 제자리에서 부분적으로 정렬됩니다.

샘플 분위수는 Q(p) = (1-γ)*x[j] + γ*x[j+1]로 정의되며, 여기서 x[j]v의 j번째 순서 통계량이고, j = floor(n*p + m), m = alpha + p*(1 - alpha - beta)γ = n*p + m - j입니다.

기본적으로(alpha = beta = 1), 분위수는 점 ((k-1)/(n-1), x[k]) 사이의 선형 보간을 통해 계산됩니다. 여기서 k = 1:n이고 n = length(v)입니다. 이는 Hyndman과 Fan(1996)의 정의 7에 해당하며, R 및 NumPy의 기본값과 동일합니다.

키워드 인수 alphabeta는 Hyndman과 Fan의 동일한 매개변수에 해당하며, 이를 서로 다른 값으로 설정하면 이 논문에서 정의된 방법 4-9로 분위수를 계산할 수 있습니다:

  • Def. 4: alpha=0, beta=1
  • Def. 5: alpha=0.5, beta=0.5 (MATLAB 기본값)
  • Def. 6: alpha=0, beta=0 (Excel PERCENTILE.EXC, Python 기본값, Stata altdef)
  • Def. 7: alpha=1, beta=1 (Julia, R 및 NumPy 기본값, Excel PERCENTILEPERCENTILE.INC, Python 'inclusive')
  • Def. 8: alpha=1/3, beta=1/3
  • Def. 9: alpha=3/8, beta=3/8
Note

vNaN 또는 missing 값이 포함된 경우 ArgumentError가 발생합니다.

References

  • Hyndman, R.J and Fan, Y. (1996) "Sample Quantiles in Statistical Packages", The American Statistician, Vol. 50, No. 4, pp. 361-365
  • Quantile on Wikipedia는 다양한 분위수 정의에 대한 세부 정보를 제공합니다.

Examples

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)

컬렉션 itr의 분위수(quantile)를 지정된 확률 또는 확률의 벡터 또는 튜플 p에 대해 [0,1] 구간에서 계산합니다. 키워드 인수 sorteditr이 정렬되어 있다고 가정할 수 있는지를 나타냅니다.

샘플 분위수는 Q(p) = (1-γ)*x[j] + γ*x[j+1]로 정의되며, 여기서 x[j]itr의 j번째 순서 통계량이고, j = floor(n*p + m), m = alpha + p*(1 - alpha - beta), γ = n*p + m - j입니다.

기본적으로(alpha = beta = 1), 분위수는 ((k-1)/(n-1), x[k]) 사이의 선형 보간을 통해 계산됩니다. 여기서 k = 1:n이고 n = length(itr)입니다. 이는 Hyndman과 Fan(1996)의 정의 7에 해당하며, R 및 NumPy의 기본값과 동일합니다.

키워드 인수 alphabeta는 Hyndman과 Fan의 동일한 매개변수에 해당하며, 이를 서로 다른 값으로 설정하면 이 논문에서 정의된 방법 4-9로 분위수를 계산할 수 있습니다:

  • Def. 4: alpha=0, beta=1
  • Def. 5: alpha=0.5, beta=0.5 (MATLAB 기본값)
  • Def. 6: alpha=0, beta=0 (Excel PERCENTILE.EXC, Python 기본값, Stata altdef)
  • Def. 7: alpha=1, beta=1 (Julia, R 및 NumPy 기본값, Excel PERCENTILEPERCENTILE.INC, Python 'inclusive')
  • Def. 8: alpha=1/3, beta=1/3
  • Def. 9: alpha=3/8, beta=3/8
Note

vNaN 또는 missing 값이 포함되어 있으면 ArgumentError가 발생합니다. skipmissing 함수를 사용하여 missing 항목을 생략하고 비어 있지 않은 값의 분위수를 계산하십시오.

References

  • Hyndman, R.J and Fan, Y. (1996) "Sample Quantiles in Statistical Packages", The American Statistician, Vol. 50, No. 4, pp. 361-365
  • Quantile on Wikipedia는 다양한 분위수 정의에 대한 세부 정보를 제공합니다.

Examples

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