拆分为测试和训练后,glm 函数用于训练集。例如
m1 = glm(target ~ ., data = train, family="binomial")
然后
P = predict(m1,newdata=test, type="response")
在这里,我收到警告消息:
newdata 有 60000 行,但找到的变量有 100000 行
下一步:
table(test$target, P>0.5)
在这里我收到错误:
所有参数必须具有相同的长度
解决方案是什么?
拆分为测试和训练后,glm 函数用于训练集。例如
m1 = glm(target ~ ., data = train, family="binomial")
然后
P = predict(m1,newdata=test, type="response")
在这里,我收到警告消息:
newdata 有 60000 行,但找到的变量有 100000 行
下一步:
table(test$target, P>0.5)
在这里我收到错误:
所有参数必须具有相同的长度
解决方案是什么?
为我找工作。也许您在训练/测试集的定义中有一些错误?
library(ISLR)
library(glmnet)
# Load data
iris = iris[iris$Species=="Setosa" | iris$Species=="versicolor",]
iris$Species = as.factor(iris$Species)
# Make a test/train split
set.seed(123)
smp_size <- floor(0.75 * nrow(iris))
train_ind <- sample(seq_len(nrow(iris)), size = smp_size)
train <- iris[train_ind, ]
test <- iris[-train_ind, ]
m1 = glm(Species ~ ., data = train, family="binomial")
p = predict(m1,newdata=test, type="response")
table(test$Species, p>0.5)