eval(expr、envir、enclose)中出错:对象';c2和x27;找不到[讽刺的是,此列存在于数据帧中]

eval(expr、envir、enclose)中出错:对象';c2和x27;找不到[讽刺的是,此列存在于数据帧中],r,R,我正在尝试写一个函数。数据由十列组成 alpha c1 c2 c3 c4....c10 1 0.4 a 2 0.3 b 1 -1.2 c 我想对五个这样的列应用回归。所以,我试着写一个函数 function.one <- function(c) { glm(c1~c2,data=alpha) } function(c=c2) 有人能告诉我为什么c2在数据集中时会出现此错误。问题在于c2在您的数据集中,而不是在全局环境中。编写f(c2)时,R查找在全局环境中定

我正在尝试写一个函数。数据由十列组成

alpha
c1 c2  c3 c4....c10
1  0.4  a
2  0.3  b 
1  -1.2  c
我想对五个这样的列应用回归。所以,我试着写一个函数

function.one <- function(c) {
    glm(c1~c2,data=alpha) }

 function(c=c2)

有人能告诉我为什么c2在数据集中时会出现此错误。

问题在于
c2
在您的数据集中,而不是在全局环境中。编写
f(c2)
时,R查找在全局环境中定义的
c2
,但找不到它。R不知道如何在data.frame的列名中查找

假设您的数据是data.frame,则需要将其引用为
df$c2
df[[“c2”]]
df[,“c2”]

您可能应该阅读R中的标准与非标准评估,因为它适用于编写您想要的函数

Error in eval(expr, envir, enclos) : object 'c2' not found