How to pass a function in a variable inside a linear regression?

Did you try it? It should work.

julia> lm(@formula(log(y) ~ x), df)
StatsModels.TableRegressionModel{LinearModel{GLM.LmResp{Array{Float64,1}},GLM.DensePredChol{Float64,LinearAlgebra.Cholesky{Float64,Array{Float64,2}}}},Array{Float64,2}}

:(log(y)) ~ 1 + x

Coefficients:
────────────────────────────────────────────────────────────────────────────
              Estimate  Std. Error   t value  Pr(>|t|)  Lower 95%  Upper 95%
────────────────────────────────────────────────────────────────────────────
(Intercept)  0.37625     0.0381661  9.85821     <1e-15   0.30051    0.451989
x            0.0331787   0.0735028  0.451394    0.6527  -0.112685   0.179043
────────────────────────────────────────────────────────────────────────────
3 Likes