在 lm() 中使用列号而不是名称

发布于 2024-12-09 14:39:44 字数 254 浏览 2 评论 0原文

我想按数字而不是名称指定列,而不是像 lm(bp~height+age, data=mydata)

我尝试了 lm(mydata[[1]]~mydata[[2]]+mydata[[3]]) 但问题是,在拟合模型中,系数被命名为 < code>mydata[[2]]、mydata[[3]] 等,而我希望它们具有真实的列名称。

也许这是鱼与熊掌兼得的情况,但如果专家能建议这是否可能,我将不胜感激

Instead of something like lm(bp~height+age, data=mydata) I would like to specify the columns by number, not name.

I tried lm(mydata[[1]]~mydata[[2]]+mydata[[3]]) but the problem with this is that, in the fitted model, the coefficients are named mydata[[2]], mydata[[3]] etc, whereas I would like them to have the real column names.

Perhaps this is a case of not having your cake and eating it, but if the experts could advise whether this is possible I would be grateful

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

温柔戏命师 2024-12-16 14:39:44
lm(
    as.formula(paste(colnames(mydata)[1], "~",
        paste(colnames(mydata)[c(2, 3)], collapse = "+"),
        sep = ""
    )),
    data=mydata
)

您可以使用所需的索引数量来代替 c(2, 3) (不需要 for 循环)。

lm(
    as.formula(paste(colnames(mydata)[1], "~",
        paste(colnames(mydata)[c(2, 3)], collapse = "+"),
        sep = ""
    )),
    data=mydata
)

Instead of c(2, 3) you can use how many indices you want (no need for for loop).

一页 2024-12-16 14:39:44
lm(mydata[,1] ~ ., mydata[-1])

我在 R 课程中发现的技巧是删除响应列,否则您会收到警告“本质上完美适合:摘要可能不可靠”。我不知道它为什么有效,它不符合文档。通常,我们保留响应栏。

托马斯之前的回答的简化版本:

lm(
    as.formula(paste(colnames(mydata)[1], "~ .")),
    data=mydata
)
lm(mydata[,1] ~ ., mydata[-1])

The trick that I found in a course on R is to remove the response column, otherwise you get warning "essentially perfect fit: summary may be unreliable". I do not know why it works, it does not follow from documentation. Normally, we keep the response column in.

And a simplified version of the earlier answer by Tomas:

lm(
    as.formula(paste(colnames(mydata)[1], "~ .")),
    data=mydata
)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文