逻辑回归

【机器学习】逻辑回归(非常详细) - 知乎 (zhihu.com)

library(MASS)
data('crabs',package="MASS")
##对4,5,6,7,8进行主成分分析
pca<-prcomp(crabs[,4:8],
            center = TRUE,
            scale. = TRUE)
attributes(pca)
prop.pca=pca$sdev^2/sum(pca$sdev^2)#每个主成分解释变化比例
round(prop.pca,digits = 3)
##采用第一或第二主成分解释了数据中超过98%的变化
pca1<-pca$x[,1]
pca2<-pca$x[,2]
fit<-glm(crabs$sex~pca1+pca2,family = 'binomial')
attributes(fit)
fit$null.deviance#参考零偏差
fit$deviance#残差偏差
1-pchisq(38.9,197)#指出自由度是197,残差偏差为38.9
#返回结果为1,则是不能拒绝原假设,即拟合值和观测值没有显著差异
pred<-predict(fit,type='response')#response给出了概率
predclass<-factor(ifelse(pred>0.5,'M','F'))
table(predclass,crabs$sex)
#predclass  F  M
#F 95  4
#M  5 96
mean(predclass!=crabs$sex)#代回误差
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容