gpt4 book ai didi

r - 如何用变量调用 lm?

转载 作者:行者123 更新时间:2023-12-02 07:37:41 26 4
gpt4 key购买 nike

<分区>

给定以下函数:

f <- function (x, y, data) {
linm <- lm(y ~ x, data)
summary(linm)$r.squared
}

以下调用失败:

d <- data.frame(a = c(1, 2), b = c(3, 4), d = c(5, 6))
f('a', 'b', d)

因为 lm 显然搜索列 xy 而不是用它们的内容替换变量名)。我该如何纠正这个问题?

我试过使用表达式和替换,但无济于事。不幸的是,我不完全理解 R 如何处理这些对象以及在哪些上下文中评估表达式,因此我在盲目飞行。这是我尝试过的(无效):

exp <- substitute(expression(y ~ x), list(x = x, y = y))
linm <- lm(formula = exp, data = data)

exp 对象在检查时实际上看起来很有前途;不幸的是,我无法说服 lm 吞下它。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com