统计建模

2022-10-25 19:52:29 浏览数 (2)

一、线性回归

回归 regression,通常指那些用一个或多个预测变量,也称自变量或解释变量,来预测响应变量,也称为因变量、效标变量或结果变量的方法。

回归分析的各种变体

代码语言:javascript复制
#简单线性回归  
rm(list = ls())
women  
plot(women)
plot(women$height,women$weight,type = 'l')
fit <- lm(weight ~ height,data=women)  
fit  
summary(fit)  
plot(fit)
fitted(fit)
resid(fit)
newdata <- data.frame(height=c(73,60))
predict(object = fit,newdata = newdata)

如何写回归公式?

R表达式中常用的符号

上面是简单的示例数据,下面介绍多元线性回归,使用state.x77数据。

代码语言:javascript复制
#谋杀率案例  
states <- as.data.frame(state.x77)  
colnames(states)
fit <- lm(Murder ~ Population   Income   Illiteracy   `Life Exp`   `HS Grad`   Frost   Area,data=states)  
summary(fit)
fit1 <- lm(Murder ~ Population   `Life Exp`,data=states)  
summary(fit1) #调整变量达到R方0.85以上即可,但过拟合拿到新的数据可能也验证不了

二、基因组大小与基因个数线性回归

基因组大小与基因数目线性关系

代码语言:javascript复制
#基因组大小与基因个数线性回归
rm(list = ls())
x <- read.csv("prok_representative.csv")
head(x)
plot(x$Size,x$Genes,pch = 16,cex = 0.8)
attach(x)
fit <- lm(Genes ~ Size,data = x)
fit
summary(fit)
plot(x$Size,x$Genes,pch = 16,cex = 0.8,
     xlab="Genome Size",ylab="Gene Numbers",main = 'Genomesize with Gene Numbers')
abline(fit,col="blue")
text(3.5,10000,label = 'y=843.7x 286.6 n R2=0.9676')
x[x$Size>15,]
x[x$Size<5 &x$Genes>6000,]
text(7,3000,labels='Corynebacterium striatum')
text(2,7000,labels='Candidatus Burkholderia kirkii UZHbot1')
#保存pdf后用adobe修改。

写在最后:有时间我们会努力更新的。大家互动交流可以前去论坛,地址在下面,复制去浏览器即可访问,弥补下公众号没有留言功能的缺憾。原地址暂未启用(bioinfoer.com)。

代码语言:javascript复制
sx.voiceclouds.cn

有些板块也可以预设为大家日常趣事的分享等,欢迎大家来提建议。

0 人点赞