![](/img/trans.png)
[英]How can I perform and store linear regression models between all continuous variables in a data frame?
[英]How can I perform Linear regression without error?
我正在尝试进行OLS回归,但不断收到错误消息,指出找不到某个变量。 我是R的新手。
除最后一行外,所有代码均有效。
load("psub.Rdata")
VarsForOLS.tbl <- psub %>%
mutate(personalIncome = PINCP, groupingID = ORIGRANDGROUP, age = AGEP, sex = SEX, workingclass = COW, educationalLevel = SCHL) %>%
select(personalIncome, groupingID, age, sex, workingclass, educationalLevel)
trainingIncome.data <- subset(VarsForOLS.tbl, groupingID >=500)
testingIncome.data <- subset(VarsForOLS.tbl, groupingID < 500)
y <- "log(personalIncome, base=10)"
explanatoryVariables <- c("age", "sex", "workingclass", "educationLevel")
olsModel <- paste(y, paste(explanatoryVariables, collapse = "+"), sep = "-")
trainingIncome.ols <- lm(olsModel, data = trainingIncome.data)
我希望能够运行线性回归,但错误提示:
Error in eval(parse(text = x, keep.source = FALSE)[[1L]]) :
object 'personalIncome' not found
为了获得最佳帮助,您应该发布一个可复制的示例 。
您正在使用-
生成公式,该公式应为~
。 更好的是,@ benbolker建议使用此方便的功能
olsModel <- reformulate(explanatoryVariables, response="y")
它将自动解析字符向量并添加y
变量作为响应,因此您不必担心波浪号和粘贴等问题。
通常,如果您对这些事情不满意,我建议您在不进行所有参数化的情况下尝试模型(只需将其键入!),然后看看它是否首先运行。 另外,尝试使用print(olsModel)
查看最终粘贴在一起的内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.