r - 计算 R 中向量的所有子集

标签 r

我想编写一个小函数,通过以强力方式测试预测变量的所有子集,然后通过 CV 评估它们的分类性能,我可以将其用于 R 逻辑回归中的自动特征选择。

令人惊讶的是,我没有找到执行此“所有子集功能选择”的程序包,因此我想自己实现它。

不幸的是,我有限的 R 知识使我无法编写一个循环来生成给定向量的所有子集,我想知道是否有人可以指出正确的方向

最佳答案

注意事项

bestglm package是你想要的

The function bestglm selects the best subset of inputs for the glm family. The selec- tion methods available include a variety of information criteria as well as cross-validation

这个小插图通过了很多例子。

library(bestglm)
data(SAHeart)
# using Cross valiation for selection
out<-bestglm(SAheart,IC  = 'CV', family=binomial, t = 10)
out
# CVd(d = 373, REP = 10)
# BICq equivalent for q in (0.190525988534159, 0.901583162187443)
# Best Model:
#                   Estimate Std. Error   z value     Pr(>|z|)
# (Intercept)    -6.44644451 0.92087165 -7.000372 2.552830e-12
# tobacco         0.08037533 0.02587968  3.105731 1.898095e-03
# ldl             0.16199164 0.05496893  2.946967 3.209074e-03
# famhistPresent  0.90817526 0.22575844  4.022774 5.751659e-05
# typea           0.03711521 0.01216676  3.050542 2.284290e-03
# age             0.05046038 0.01020606  4.944159 7.647325e-07

关于r - 计算 R 中向量的所有子集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16928973/

相关文章:

regex - R gsub 单双引号

r - 为什么\K 似乎消耗了基本 R 的 gsub 中的一个字符

r - 在 Zscaler 防火墙后面的 Docker 镜像中发出 HTTPS 请求

r - mlr3 正确设置并行化

r - 在 R 中的向量中将 NA 更改为 ""

使用概率向量随机抽取

r - 使用协变量生成 Beta-二项式响应

r - 根据值将逗号分隔的数字列拆分为多列

r - 按日期排序的两侧条形图

r - 如何使用 R 中的数据框列表绘制图表