gpt4 book ai didi

r - 逻辑回归 - eval(family$initialize) : y values must be 0 <= y <= 1

转载 作者:行者123 更新时间:2023-12-02 14:53:58 25 4
gpt4 key购买 nike

我正在尝试在此处提供的数据集中使用 R 执行逻辑回归:http://archive.ics.uci.edu/ml/machine-learning-databases/00451/这是关于乳腺癌的。此数据集包含一列 Classification,其中仅包含 1(如果患者未患癌症)或 2(如果患者患有癌症)

library(ISLR)
dataCancer <- read.csv("~/Desktop/Isep/Machine
Leaning/TD/Project_Cancer/dataR2.csv")
attach(dataCancer)



#Step : Split data into training and testing data
training = (BMI>25)
testing = !training
training_data = dataCancer[training,]
testing_data = dataCancer[testing,]

Classification_testing = Classification[testing]

#Step : Fit a logistic regression model using training data

classification_model = glm(Classification ~ ., data =
training_data,family = binomial )

当运行我的脚本时,我得到:

> classification_model = glm(Classification ~ ., data = training_data,family = binomial )
Error in eval(family$initialize) : y values must be 0 <= y <= 1
> summary(classification_model)
Error in summary(classification_model) : object 'classification_model' not found .

我在其他帖子中添加了 as.factor(dataCancer$Classification) 但它没有解决我的问题。如果分类值是此预测变量的内容,您能否建议我一种使分类值介于 0 和 1 之间的方法?

最佳答案

您在脚本中添加了 as.factor(dataCancer$Classification),但即使附加了数据集 dataCancer,像上面这样的命令也不会转换将数据集变量分类转化为一个因素。它只在控制台上返回一个因素。

由于您想在训练数据集上拟合模型,您可以指定

training_data$Classification <- as.factor(training_data$Classification)
classification_model <- glm(Classification ~ ., data =
training_data, family = binomial)

或者在 glm 行代码中使用 as.factor 函数

classification_model <- glm(as.factor(Classification) ~ ., data = 
training_data, family = binomial)

关于r - 逻辑回归 - eval(family$initialize) : y values must be 0 <= y <= 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53942910/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com