如何从 Julia 中拟合的 GLM 模型对象中提取数据分布类型(例如泊松、二项式)?
How to extract data distribution type (e.g. Poisson, binomial) from fitted GLM model object in Julia?
如何在Julia
中提取一般线性模型中指定的数据分布?例如,下面我安装了一个玩具示例 Poisson GLM。我想从模型中提取一个字符串 'Poisson' 。同样,如果用数据分布指定模型 = Binomial()
,我希望字符串为 return 'Binomial'.
### Load packages required
using DataFrames
using GLM
### Simulate some data for a dummy GLM
data = DataFrame(X=[1,2,3,4,5,6,7,8,9,10], Y=[2,4,7,3,1,6,3,2,5,1])
### Fit Poisson GLM
m1 = fit(GeneralizedLinearModel,
@formula(Y ~ X),
data,
Poisson(),
LogLink())
最终,我想编写一个接受 if
语句的函数,其中 if == Poisson
然后执行 X,else
执行 Y。
前段时间在 Julia Discourse 上讨论过这个 here,你可以用:
julia> typeof(m1).parameters[1].parameters[1].parameters[2]
Poisson{Float64}
如何在Julia
中提取一般线性模型中指定的数据分布?例如,下面我安装了一个玩具示例 Poisson GLM。我想从模型中提取一个字符串 'Poisson' 。同样,如果用数据分布指定模型 = Binomial()
,我希望字符串为 return 'Binomial'.
### Load packages required
using DataFrames
using GLM
### Simulate some data for a dummy GLM
data = DataFrame(X=[1,2,3,4,5,6,7,8,9,10], Y=[2,4,7,3,1,6,3,2,5,1])
### Fit Poisson GLM
m1 = fit(GeneralizedLinearModel,
@formula(Y ~ X),
data,
Poisson(),
LogLink())
最终,我想编写一个接受 if
语句的函数,其中 if == Poisson
然后执行 X,else
执行 Y。
前段时间在 Julia Discourse 上讨论过这个 here,你可以用:
julia> typeof(m1).parameters[1].parameters[1].parameters[2]
Poisson{Float64}