From bece9cb235dbd7ccb851cec8c530918b233ac393 Mon Sep 17 00:00:00 2001 From: Josh Day Date: Sat, 24 Jun 2023 20:10:59 -0400 Subject: [PATCH] updating code to current personal preferences --- src/bivariate.jl | 14 ++++++-------- src/kernels.jl | 17 ++++++++--------- src/univariate.jl | 8 ++++---- 3 files changed, 18 insertions(+), 21 deletions(-) diff --git a/src/bivariate.jl b/src/bivariate.jl index 7dc5528..2c700a0 100644 --- a/src/bivariate.jl +++ b/src/bivariate.jl @@ -20,15 +20,13 @@ end function Base.show(io::IO, o::Ash2) println(io, "Ash2") f, l, s = round.((first(o.rngx), last(o.rngx), step(o.rngx)), digits=4) - print(io, "X:") - println(io, " > edges | $f : $s : $l") - println(io, " > kernel | $(o.kernelx)") - println(io, " > m | $(o.mx)") + println(io, "X: • edges | $f : $s : $l") + println(io, " • kernel | $(o.kernelx)") + println(io, " • m | $(o.mx)") f, l, s = round.((first(o.rngy), last(o.rngy), step(o.rngy)), digits=4) - print(io, "Y:") - println(io, " > edges | $f : $s : $l") - println(io, " > kernel | $(o.kernely)") - println(io, " > m | $(o.my)") + println(io, "Y: • edges | $f : $s : $l") + println(io, " • kernel | $(o.kernely)") + println(io, " • m | $(o.my)") print(io, UnicodePlots.spy(reverse(o.z, dims=1)).graphics) end diff --git a/src/kernels.jl b/src/kernels.jl index 80563da..60a076d 100644 --- a/src/kernels.jl +++ b/src/kernels.jl @@ -1,14 +1,13 @@ module Kernels -in_range(u) = abs(u) ≤ 1 - -biweight(u) = in_range(u) ? (1.0 - u ^ 2) ^ 2 : 0.0 -cosine(u) = in_range(u) ? cos(0.5 * π * u) : 0.0 -epanechnikov(u) = in_range(u) ? 1.0 - u ^ 2 : 0.0 -triangular(u) = in_range(u) ? 1.0 - abs(u) : 0.0 -tricube(u) = in_range(u) ? (1.0 - abs(u) ^ 3) ^ 3 : 0.0 -triweight(u) = in_range(u) ? (1.0 - u ^ 2) ^ 3 : 0.0 -uniform(u) = in_range(u) ? 0.5 : 0.0 +biweight(u) = abs(u) ≤ 1 ? (1.0 - u ^ 2) ^ 2 : 0.0 +cosine(u) = abs(u) ≤ 1 ? cos(0.5 * π * u) : 0.0 +epanechnikov(u) = abs(u) ≤ 1 ? 1.0 - u ^ 2 : 0.0 +triangular(u) = abs(u) ≤ 1 ? 1.0 - abs(u) : 0.0 +tricube(u) = abs(u) ≤ 1 ? (1.0 - abs(u) ^ 3) ^ 3 : 0.0 +triweight(u) = abs(u) ≤ 1 ? (1.0 - u ^ 2) ^ 3 : 0.0 +uniform(u) = abs(u) ≤ 1 ? 0.5 : 0.0 +# Kernels that don't require -1 ≤ u ≤ 1. gaussian(u) = exp(-0.5 * u ^ 2) logistic(u) = 1.0 / (exp(u) + 2.0 + exp(-u)) end diff --git a/src/univariate.jl b/src/univariate.jl index 7c2e58e..230cc74 100644 --- a/src/univariate.jl +++ b/src/univariate.jl @@ -13,10 +13,10 @@ end function Base.show(io::IO, ::MIME"text/plain", o::Ash) println(io, "Ash") f, l, s = round.((first(o.rng), last(o.rng), step(o.rng)), digits=4) - println(io, " > edges | $f : $s : $l") - println(io, " > kernel | $(o.kernel)") - println(io, " > m | $(o.m)") - println(io, " > nobs | $(o.nobs)") + println(io, " • edges | $f : $s : $l") + println(io, " • kernel | $(o.kernel)") + println(io, " • m | $(o.m)") + println(io, " • nobs | $(o.nobs)") x, y = xy(o) inds = findall(x -> x != 0, y) print(io, UnicodePlots.lineplot(x[inds], y[inds]; grid = false))