NO.5-数据预处理,方差分析,逐步回归等

数据预处理

w=read.csv("pharynx.csv")#把当前工作目录中的口咽癌数据pharynx.csv读入R,并赋值给w
w=w[,-c(1,11)]#去掉第1列CASE和第11列ENTRY.DT
w=w[wCOND!=9 & wGRADE!=9,]#去掉存在缺失值的两行
wCOND[wCOND==3 | wCOND==4]=2#把变量COND的水平3,4都修改为2 wCOND[w$COND==0]=1#把变量COND的水平0修改为1
write.csv(w,"pharynx1.csv",row.names=F)

对于整理过的数据对象w,保存为文件pharynx1.csv于当前工作目录中,row.names=F表示不出现行序号

ww<-read.csv("pharynx1.csv")#数据pharynx.csv读入R,并赋值给w
head(ww)#查看前六列数据
summary(ww)#查看变量类型
for(i in c(3,10)) ww[,i]=factor(ww[,i])#把TX、STAUS的变量改变变量类型为因子型
summary(ww)#查看变量类型
lm1<-lm(TIME~.,data=ww)#以TIME为因变量,其它变量为自变量进行线性回归。
anova(lm1)#lm1方差分析表
summary(lm1)
steplm1<-step(lm1)#以TIME为因变量,其它变量为自变量进行逐步回归
shapiro.test(steplm1$res)#使用shapiro.test函数对逐步回归模型的残差进行正态性检验

p值等于1.723e-05小于0.05,不能拒绝原假设H0:ε服从正态检验

library(MASS)
(bx<-boxcox(TIME~.,data=ww))#Box-Cox变换公式,

选择使得对数似然曲线的纵坐标y达到最大值的相应的横坐标x

attach(bx)
(lmbx<-lm(y~x))#使用Box-Cox变换后进行线性回归
summary(lmbx)coef#变量和常量都显著 shapiro.test(lmbxres)#使用shapiro.test函数对模型进行残差检验,p值小于0.05,仍满足正态性假定

2

d<-read.table("clipboard",header=T)#复制mvexec4.xls表单E5.4
head(d)
attach(d)
dG[dG==2]=factor(0)#将数据G中的2换成0
d$G
logit.glm<-glm(G~.,family=binomial,data=d)#Logistic回归模型
summary(logit.glm)#Logistic回归模型结果
logit.step<-step(logit.glm)#逐步回归变量选择
summary(logit.step)#逐步回归变量选择结果
pre<-predict(logit.step,as.data.frame(list(x1=131,x2=-2)))#预测logistic回归结果
(p<-exp(pre)/1-exp(pre))#结果为0,根据模型,当x1=131,x2=-2时,不会给该客户提供贷款

3

y=1"城市",y=0"农村"

z=1"南方",z=0"北方"

s=3为大容量,s=2为中容量,s=1为小容量

x为频数

数据存储名为第三题数据的excel表格

(b<-read.table("clipboard",header=T))#将第三题的数据复制
lm2<-(lm(x~factor(y)+factor(z)+factor(s),data=b))#将y、z、s转化成因子进行线性回归
summary(lm2)#查看结果,各变量都不显著
step(lm2)#逐步回归后各变量因不显著被删除

chisq.test(b)#对b进行卡方检验

log1<-glm(x~.,family=poisson(link=log),data=b)#对数线性模型
summary(log1)#查看对数线性模型的结果
step.log1<-step(log1)#对对数模型进一步作回归
summary(step.log1)#查看结果

你可能感兴趣的:(NO.5-数据预处理,方差分析,逐步回归等)