【发布时间】:2020-03-08 15:21:01
【问题描述】:
我正在尝试使用这些数据创建一个多元线性回归模型:
bweight gestwks hyp sex
1 2974 38.5200004577637 0 female
2 3270 NA 0 male
3 2620 38.150001525878899 0 female
4 3751 39.799999237060497 0 male
5 3200 38.889999389648402 1 male
6 3673 40.970001220703097 0 female
为了考虑字符串类型参数“男”和“女”,我将它们转换为整数 1 和 0,如下所示:
male = 1*(sex == "male")
因此,创建线性模型,其中婴儿体重是结果变量:
lm2 = lm(bweight ~ gestwks + hyp + male)
但是当我想查看模型的参数时,我得到了这个(这里不包括整个输出):
Call:
lm(formula = bweight ~ gestwks +
hyp + male)
Coefficients:
(Intercept) gestwks26.950000762939499
864.000 -236.000
gestwks27.329999923706101 gestwks27.9899997711182
7.363 146.469
gestwks28.040000915527301 gestwks30.5200004577637
184.469 760.469
gestwks30.649999618530298 gestwks30.709999084472699
900.000 -141.531
我应该只得到一对参数。我做错了什么?
【问题讨论】:
-
可能会将
gestwks转换为数字。 -
@jay.sf 你是什么意思?
-
您可以检查您是如何创建或导入数据的。出于某种原因,
gestwks被存储为factor而 not 被存储为数字!这就是为什么您要估计 每个 唯一值gestwks。如果您想改进您的问题,这里有一些关于asking a question 的信息以及如何提供minimale reproducible example。 MRE 将使其他人更容易找到和测试您的问题的答案。这样你就可以帮助别人帮助你! -
上面评论中发布的链接 jay.sf 应该可以解释一些问题。但是,与其将值重铸为数字,不如修复导入可能更安全。如需更多帮助和支持,如果您在问题的编辑中添加了一个最小的可重现示例,那就太好了
标签: r linear-regression