diff --git a/src/Statistics.jl b/src/Statistics.jl index 07151e47..351815d3 100644 --- a/src/Statistics.jl +++ b/src/Statistics.jl @@ -332,13 +332,14 @@ over dimensions, and `mean` may contain means for each dimension of `itr`. Use the [`skipmissing`](@ref) function to omit `missing` entries and compute the variance of non-missing values. """ -var(A::AbstractArray; corrected::Bool=true, mean=nothing, dims=:) = _var(A, corrected, mean, dims) +var(A::AbstractArray; corrected::Bool=true, dims=:, mean=Statistics.mean(A, dims=dims)) = + _var(A, corrected, mean, dims) _var(A::AbstractArray, corrected::Bool, mean, dims) = - varm(A, something(mean, Statistics.mean(A, dims=dims)); corrected=corrected, dims=dims) + varm(A, mean; corrected=corrected, dims=dims) _var(A::AbstractArray, corrected::Bool, mean, ::Colon) = - real(varm(A, something(mean, Statistics.mean(A)); corrected=corrected)) + real(varm(A, mean; corrected=corrected)) varm(iterable, m; corrected::Bool=true) = _var(iterable, corrected, m) @@ -405,7 +406,8 @@ over dimensions, and `means` may contain means for each dimension of `itr`. Use the [`skipmissing`](@ref) function to omit `missing` entries and compute the standard deviation of non-missing values. """ -std(A::AbstractArray; corrected::Bool=true, mean=nothing, dims=:) = _std(A, corrected, mean, dims) +std(A::AbstractArray; corrected::Bool=true, dims=:, mean=Statistics.mean(A, dims=dims)) = + _std(A, corrected, mean, dims) _std(A::AbstractArray, corrected::Bool, mean, dims) = sqrt.(var(A; corrected=corrected, mean=mean, dims=dims))