立即注册 登录
统计211 返回首页

li603060971的个人空间 http://tj211.com/?12454 [收藏] [复制] [分享] [RSS]

日志

方差齐性 异常值 强影响点 正态性诊断的r语言代码

已有 995 次阅读2015-10-14 20:14 | 回归分析, 例子, r语言, 代码, 统计软件

shuju<-data.frame(x=c(825,215,1070,550,480,920,1350,325,670,1215),y=c(3.5,1,4,2,1,3,4.5,1.5,3,5))
shuju.reg<-lm(y~x)

#方差齐性检验
#1.残差图
shuju.res<-residuals(shuju.reg)
par(mfrow=c(1,1))    #设置画图为1*1的格式
plot(shuju.res~x)     #按照书上作以X为横坐标的残差图
#2.Spearman等级相关系数
cor.test(x,abs(shuju.res),method="spearman")
#3.ncvTest
library(car)
ncvTest(shuju.reg)
#4.spreadLevelPlot
library(car)
spreadLevelPlot(shuju.reg)
#5.gvlma综合诊断
#install.packages("gvlma")
library(gvlma)
gvlma(shuju.reg)

#自相关性
#图形诊断自相关性
shuju.res1<-shuju.res[1:length(shuju.res)-1]   
shuju.res2<-shuju.res[2:length(shuju.res)]
plot(shuju.res1,shuju.res2)   #e(t)与e(t-1)作图

#统计量诊断自相关性
library(car)
durbinWatsonTest(shuju.reg)



#异常值与强影响点
#残差
shuju.stdres<-rstudent(shuju.reg);shuju.stdres     
#中心化杠杆值
ch<-hatvalues(shuju.reg)-1/10;ch
#Cook距离
shuju.cooks<-cooks.distance(shuju.reg);shuju.cooks
#找异常值
isoutlier<-abs(shuju.stdres3)>3;isoutlier
isch<-ch>2*1/10;isch
iscooks<-shuju.cooks>1;iscooks
isch*iscooks

#正态性检验
plot(shuju.reg,2)   #qq plot
qqPlot(shuju.reg)   #这个qq plot含有更多的信息


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 立即注册


免责声明|关于我们|小黑屋|联系我们|赞助我们|统计211 ( 闽ICP备09019626号  

GMT+8, 2025-10-3 03:03 , Processed in 0.047985 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

返回顶部