我开始与使用的涉猎glmnet
与LASSO回归那里我感兴趣的结果是二分。我在下面创建了一个小的模拟数据框:
age <- c(4, 8, 7, 12, 6, 9, 10, 14, 7)
gender <- c(1, 0, 1, 1, 1, 0, 1, 0, 0)
bmi_p <- c(0.86, 0.45, 0.99, 0.84, 0.85, 0.67, 0.91, 0.29, 0.88)
m_edu <- c(0, 1, 1, 2, 2, 3, 2, 0, 1)
p_edu <- c(0, 2, 2, 2, 2, 3, 2, 0, 0)
f_color <- c("blue", "blue", "yellow", "red", "red", "yellow", "yellow",
"red", "yellow")
asthma <- c(1, 1, 0, 1, 0, 0, 0, 1, 1)
# df is a data frame for further use!
df <- data.frame(age, gender, bmi_p, m_edu, p_edu, f_color, asthma)
上述数据集中的列(变量)如下:
age
(岁的孩子的年龄)-连续gender
-二进制(1 =男性; 0 =女性)bmi_p
(BMI百分位数)-连续m_edu
(母亲的最高学历)-顺序(0 =高中以下; 1 =高中文凭; 2 =学士学位; 3 =学士后学位)p_edu
(父亲的最高学历)-序数(与m_edu相同)f_color
(最喜欢的原色)-标称(“蓝色”,“红色”或“黄色”)asthma
(儿童哮喘状态)-二元(1 =哮喘; 0 =无哮喘)
此示例中的目标是利用套索创建一个从6个潜在的预测变量(列表中选择一个模型预测孩子的哮喘状况age
,gender
,bmi_p
,m_edu
,p_edu
,和f_color
)。显然样本量是一个问题,但我希望glmnet
当结局为二元(1 =哮喘)时,如何在框架内处理不同类型的变量(即,连续,序数,名义和二元)获得更多见解。; 0 =无哮喘)。
因此,是否有人愿意提供样本R
脚本以及使用LASSO和上述数据预测哮喘状态的模拟示例的解释?尽管非常基础,但我知道我以及可能还有很多其他简历工作人员,一定会非常感谢!
谢谢@GavinSimpson!我用数据框更新了帖子,所以希望我能吃点蛋糕而不会结霜!:)
—
马特·赖兴巴赫
通过使用BMI百分位数,您在某种意义上是在违背物理定律。肥胖症是根据体格测量(长度,体积,体重)影响个人的,而不是根据与当前受试者相似的个体的多少来衡量的,这就是百分比的作用。
—
弗兰克·哈雷尔
我同意,BMI百分位数不是我更喜欢使用的指标;但是,疾病预防控制中心指南建议,对于身高不到20岁的儿童和青少年,BMI百分比要高于BMI(这也是一个高度可质疑的指标!),因为它考虑了身高和体重以及年龄和性别。在本示例中,所有这些变量和数据值都经过了深思熟虑。该示例未反映我处理大数据时的任何当前工作。我只是想看看一个
—
马特·赖兴巴赫
glmnet
具有二进制结果的实际操作示例。
在此处插入Patrick Breheny称为ncvreg的软件包,该软件包适合受MCP,SCAD或LASSO惩罚的线性和逻辑回归模型。(cran.r-project.org/web/packages/ncvreg/index.html)
—
bdeonovic
dput
了的实际 [R对象; 不要让读者把糖霜放在上面,也不要给你烤蛋糕!例如,如果您在R中生成适当的数据帧foo
,则将问题的输出编辑到问题中dput(foo)
。