Skip to content

Instantly share code, notes, and snippets.

@ericqu
Created June 30, 2022 19:47
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ericqu/8dceb0c6fbae8ea811cd4a594748c0cf to your computer and use it in GitHub Desktop.
Save ericqu/8dceb0c6fbae8ea811cd4a594748c0cf to your computer and use it in GitHub Desktop.
wrangler 3
using LinearRegressionKit, StatsModels, DataFrames, CSV
y = [760.0, -2042.0, 2111.0, -1684.0, 3888.0, 1858.0, 11379.0, 17560.0, 39287.0, 64382.0, 113159.0, 175108.0, 273291.0, 400186.0, 581243.0, 811568.0, 1.121004e6, 1.50655e6, 2.002767e6, 2.611612e6, 3.36918e6]
x = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
df = DataFrame(y = y, x = x)
f = @formula(y ~ x + x^2 + x^3 + x^4 + x^5 )
lrk= regress(f, df, req_stats=["default"])
lrk
delta(a,b) = abs(a-b) ≈ 0. ? 0. : abs(a-b)
println("Wangler 3 - LRK")
println(string("delta B0 ", delta(1. , lrk.coefs[1])))
println(string("delta B1 ", delta(1. , lrk.coefs[2])))
println(string("delta B2 ", delta(1. , lrk.coefs[3])))
println(string("delta B3 ", delta(1. , lrk.coefs[4])))
println(string("delta B4 ", delta(1. , lrk.coefs[5])))
println(string("delta B5 ", delta(1. , lrk.coefs[6])))
println(string("delta std err B0 ", delta(2152.32624678170, lrk.stderrors[1])))
println(string("delta std err B1 ", delta(2363.55173469681, lrk.stderrors[2])))
println(string("delta std err B2 ", delta(779.343524331583, lrk.stderrors[3])))
println(string("delta std err B3 ", delta(101.475507550350, lrk.stderrors[4])))
println(string("delta std err B4 ", delta(5.64566512170752, lrk.stderrors[5])))
println(string("delta std err B5 ", delta(0.112324854679312, lrk.stderrors[6])))
println(string("delta resid std dev ", delta(2360.14502379268, lrk.RMSE)))
println(string("delta R2 ", delta(0.999995559025820, lrk.R2)))
using GLM
println("Wangler 3 - GLM")
lr = GLM.lm(f, df)
println(string("delta B0 ", delta(1. , coef(lr)[1])))
println(string("delta B1 ", delta(1. , coef(lr)[2])))
println(string("delta B2 ", delta(1. , coef(lr)[3])))
println(string("delta B3 ", delta(1. , coef(lr)[4])))
println(string("delta B4 ", delta(1. , coef(lr)[5])))
println(string("delta B5 ", delta(1. , coef(lr)[6])))
println(string("delta std err B0 ", delta(2152.32624678170, stderror(lr)[1])))
println(string("delta std err B1 ", delta(2363.55173469681, stderror(lr)[2])))
println(string("delta std err B2 ", delta(779.343524331583, stderror(lr)[3])))
println(string("delta std err B3 ", delta(101.475507550350, stderror(lr)[4])))
println(string("delta std err B4 ", delta(5.64566512170752, stderror(lr)[5])))
println(string("delta std err B5 ", delta(0.112324854679312, stderror(lr)[6])))
println(string("delta resid std dev ", delta(2360.14502379268, deviance(lr)/dof_residual(lr))))
println(string("delta R2 ", delta(0.999995559025820, r2(lr))))
# println(string("delta B0 ", delta(1., coef(lr)[1])))
# println(string("delta B1 ", delta(0.1, coef(lr)[2])))
# println(string("delta B2 ", delta(0.100000000000000E-01, coef(lr)[3])))
# println(string("delta B3 ", delta(0.100000000000000E-02, coef(lr)[4])))
# println(string("delta B4 ", delta(0.100000000000000E-03, coef(lr)[5])))
# println(string("delta B5 ", delta(0.100000000000000E-04, coef(lr)[6])))
# println(string("delta std err B0 ", delta(0., stderror(lr)[1])))
# println(string("delta std err B1 ", delta(0., stderror(lr)[2])))
# println(string("delta std err B2 ", delta(0., stderror(lr)[3])))
# println(string("delta std err B3 ", delta(0., stderror(lr)[4])))
# println(string("delta std err B4 ", delta(0., stderror(lr)[5])))
# println(string("delta std err B5 ", delta(0., stderror(lr)[6])))
# println(string("delta resid std dev ", delta(0., deviance(lr)/dof_residual(lr))))
# println(string("delta R2 ", delta(1., r2(lr))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment