在R中使用现有虚拟变量生成回归方程的代码正确性验证
问题
需要生成如下回归方程:
Charges = B₀ + B₁*Age + B₂*BMI + B₃*Children + B₄*Female + B₅*Smoker + B₆*Wintersprings + B₇*WinterPark + B₈*Oviedo
其中城市变量(Winter Springs等)为虚拟变量,基准组为Sanford(不在数据集中,对应取值为0)。请问以下R代码写法是否正确?
Chargeslm <- lm(Charges ~ age + bmi + children + female + smoker + wintersprings + winterpark + oviedo, data = insurace) summary(Chargeslm)
回答
这段R代码的写法是正确的,原因如下:
- 代码中直接将三个城市虚拟变量(
wintersprings、winterpark、oviedo)作为自变量纳入模型,当这三个变量同时取0时,就对应基准组Sanford的情况,完全符合设定的回归方程要求。 - 需要注意两个细节:一是要确保代码中的变量名(比如
age、bmi等)和数据集insurace中的实际变量名大小写完全一致,否则会出现变量找不到的错误;二是确认数据集名称insurace的拼写正确(如果实际应为insurance则需要修正)。
内容的提问来源于stack exchange,提问作者jonathan marin
相关产品推荐
相关产品推荐

