Hello,
-- My "mad" function seems to be broken. Maybe I just don't know how to use it right: julia> using StatsBase julia> @doc mad No documentation found. StatsBase.mad is a generic Function. # 2 methods for generic function "mad": mad{T<:Real}(v::Range{T<:Real}, args...) at /home/daniel/.julia/v0.4/StatsBase/src/scalarstats.jl:180 mad{T<:Real}(v::AbstractArray{T<:Real,N}, args...) at /home/daniel/.julia/v0.4/StatsBase/src/scalarstats.jl:179 julia> mad([1,2,3,4]) ERROR: InexactError() in mad! at /home/daniel/.julia/v0.4/StatsBase/src/scalarstats.jl:184 in mad! at /home/daniel/.julia/v0.4/StatsBase/src/scalarstats.jl:183 in mad at /home/daniel/.julia/v0.4/StatsBase/src/scalarstats.jl:179 julia> Does anyone know what's happening? Also, I am confused by the "constant" parameter. The documentation says: mad (x[, center][; constant=1.4826])Compute the median absolute deviation of One can optionally supply the Does this mean that, by default, the mad() function doesn't give you the MAD, bunt instead it gives you MAD*1.4826 ? Thanks for the help. Cheers, Daniel. You received this message because you are subscribed to the Google Groups "julia-stats" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
It seems `mad` calls `mad!` with a copy. The mad! function reuses the copied vector for storage. As the differences from the median are not integers you get an assignment error. That's fussy and should be easily addressed. The multiplier is also done by default in R so that the units of spread for mad and sd are similar.
-- On Wednesday, July 27, 2016 at 5:50:02 AM UTC-4, Daniel Carrera wrote:
You received this message because you are subscribed to the Google Groups "julia-stats" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
Thanks. Why can't the MAD just be implemented as `mad(x) = median(abs(x - median(x)))` ? Cheers, Daniel. On 27 July 2016 at 15:49, j verzani <[hidden email]> wrote:
You received this message because you are subscribed to the Google Groups "julia-stats" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
median(abs(x - median(x))) probably creates three temporaries which is the reason to do this in place. The mad function should promote integers to floats before calling mad!. Please file an issue. On Wed, Jul 27, 2016 at 9:55 AM, Daniel Carrera <[hidden email]> wrote:
You received this message because you are subscribed to the Google Groups "julia-stats" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
Ok. Issue submitted. On 27 July 2016 at 15:59, Andreas Noack <[hidden email]> wrote:
You received this message because you are subscribed to the Google Groups "julia-stats" group. To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email]. For more options, visit https://groups.google.com/d/optout. |
Free forum by Nabble | Edit this page |