Her*_*rop 4 r model-fitting feature-selection glm
当使用glm
中的R功能的一个可以使用的功能,如addNA
或log
内部formula
参数.比方说,我们有一个数据帧Data
有4列:Class
,var1
这是因素和var2
,var3
这是数值变量,我们适合:
Model <- glm(data = Data,
formula = Class ~ addNA(var1) + var2+ log(var3),
family = binomial)
Run Code Online (Sandbox Code Playgroud)
在glm输出变量1现在将被调用addNA(var1)
(例如,在Model$xlevels
),而变量3将被调用log(var3)
.
是否可以从glm输出中检索一个列表,该列表指示var1,var2和var3是从数据帧中提取的,而变量名中没有出现addNA(var1)或log(var3)?
更一般的是,在调用glm 之后,在 glm函数内生成任何变换/交叉项等之前,是否有可能推断出哪些列是通过glm从输入数据帧中提取的?
这有效:
all.vars(formula(Model)[-2])
## [1] "var1" "var2" "var3"
Run Code Online (Sandbox Code Playgroud)
的[-2]
索引中删除从该公式的响应变量.但是,您可能会对内部存储的模型框架没有原始变量,但转换后的变量...感到失望.
names(model.frame(Model))
## [1] "Class" "addNA(var1)" "var2" "log(var3)"
Run Code Online (Sandbox Code Playgroud)