使用我的代码,我得到了错误:类型为'closure'的对象是不可子集的,并且我不确定从那里去哪里。我需要更改些什么才能消除错误?
library(dplyr)
data(iris)
rows <- sample(nrow(data))
data <- data[rows, ]
train <- rbind(data[data$Species == "setosa", ][1:40, ], data[data$Species == "versicolor", ][1:40,])
test <- rbind(data[data$Species == "setosa", ][41:50, ], data[data$Species == "versicolor", ][41:50, ])
glm.fits <- glm(Species ~ Sepal.Width + Sepal.Length + Petal.Length, data = train, family = binomial)
glm.probs <- predict(glm.fits, test, type = "response")
glm.prep <- rep("setosa", 20)
glm.prep[glm.probs > 0.5] = "versicolor"
table(glm.prep, test$Species)
答案 0 :(得分:-1)
data(iris)
将创建一个名为iris
而不是data
的变量,您的代码似乎除外。
请尝试使用data <- iris
,因为iris
数据集已经可用。
如果有帮助,并且您正在RStudio中工作,请尝试逐行运行代码以查看错误发生的位置。完成后,您会看到rows
变量设置为NULL
,这是意外的。