【发布时间】:2021-09-26 17:34:57
【问题描述】:
使用 R 对波士顿犯罪数据集进行一些逻辑回归。 这段代码工作得很好:
#################################
library(MASS)
head(Boston)
?Boston
plot(Boston$zn, Boston$crim) #gives scatter plot
lm(formula=Boston$crim~Boston$zn, data=Boston) #gives slope and intercept of best fit line
lm.Boston <-lm(formula=Boston$crim~Boston$zn, data=Boston) #saves information as lm.Boston
abline(lm.Boston) #plots best fit line Adds on to existing plot
abline(v=mean(Boston$zn),col='red') #plots mean for crim
abline(h=mean(Boston$crim),col='red') #plots mean for zn
summary(Boston$zn)
###############################
但我必须将 $zn 替换为 13 个其他变量值,并且我试图在循环中执行此操作,以避免重复代码块 13 次!
绑定这个,但是出错了
for (i in 2:ncol(Boston)){
clname <- colnames(Boston)[i]
predictor <- paste('Boston$',clname,sep="")
print(predictor)
plot(eval(predictor), Boston$crim) #gives scatter plot
# lm(formula=Boston$crim~predictor, data=Boston) #gives slope and intercept of best fit line
# lm.Boston <-lm(formula=Boston$crim~predictor, data=Boston) #saves information as lm.Boston
# abline(lm.Boston) #plots best fit line Adds on to existing plot
# abline(v=mean(predictor),col='red') #plots mean for crim
# abline(h=mean(Boston$crim),col='red') #plots mean for clname
}
当我打印出预测变量时,它似乎是正确的,但第一个绘图语句给出了错误(注释掉其余代码以尝试修复此错误。
这是我得到的错误:
[1] xy.coords(x, y, xlabel, ylabel, log) 中的“Boston$zn”错误:“x” 和'y'长度不同
【问题讨论】:
标签: r