gq检验和white检验的比较

Python011

gq检验和white检验的比较,第1张

gq检验法

切记:先对解释变量x排序(一般是按照升序),再截断样本,取一头一尾,计算残差平方和,构造F检验,得出结论。

注:[proc]—[making equations]—[equation estimate]

原样本数据共有23个,这里去掉了排序后的中间5个,取一头(前9个样本数据)和一尾(后9个样本数据),分别对其进行线性回归;

对后9个样本数据做回归的结果展示如下:

注意看·sample·为15 23 ;·include observations·为9.

计算F检验值:因为一头一尾线性回归中的使用观测样本数据个数是一样的,所以只需要提取·sum squared resid·这一项做除就行。

white检验法

先对x、y进行线性回归,并在equation框中,【view】-【residual diagnostic】-【heter… test】-【white】。

返回结果如下图:

方差的修正:

加权最小二乘法。

举例:

如果 V a r ( u i ) = σ i 2 = σ 2 X i 2 Var(u_{i})=\sigma_{i}^{2}=\sigma^{2}X_{i}^{2} Var(u i )=σ i2 =σ 2 X i2 ,

考虑 V a r ( u i X i ) = σ 2 Var(\frac{u_{i}}{X_{i}})=\sigma^{2} Var(

X iu i )=σ 2 ,

那么原模型 Y i = β 0 + β 1 X i + u i Y_{i}=\beta_{0}+\beta_{1}X_{i}+u_{i} Y

i =β 0+β X i +u i

​ 随之化为 Y i X i = β 0 X i + β 1 + u i X i \frac{Y_{i}}{X_{i}}=\frac{\beta_{0}}{X_{i}}+\beta_{1}+\frac{u_{i}}{X_{i}}

X iY i = X iβ0+β 1 + X iu i

​这里的权数就是 1 X i \frac{1}{X_{i}}

X i1 .

用Eviews操作如下:

方法一:

输入ls y/x c 1/x+回车,即可。

不建议使用该方法,理由:返回结果简单,很难体现出改进在了什么地方

方法二:

先对x、y进行线性回归,并在equation框中,点击[estimate]-[option]

1 读取,计算均值,箱图观察

2 查看数据分布

2.1 hist直方图

2.2 qqnorm散点图

3 Shapiro-Wilk正态性检验

4 方差齐性检验

意义:方差分析就是在大家误差水平差不多的条件下看控制和对照组是不是有显著差异。那方差其实就是误差水平了。当方差不一致的时候,这个方法就没法分辨出究竟是控制造成的差异还是,内在的波动造成的差异。

参考: https://www.zhihu.com/question/21195390

参考: https://blog.csdn.net/tiaaaaa/article/details/58130363

4.1 F检验

使用条件:数据正态分布,只可以检验两个样本

4.2 bartlett检验

使用条件:正态分布的数据,多个样本

4.3 levene检验

没有条件:数据可不具正态性,可以检验多个总体的方差齐性

SPSS的默认方差齐性检验方法

5 差异检验

5.1 参数检验:T检验

使用条件:两样本来自正太分布总体,方差齐

5.2 非参数检验:Wilcoxon秩和检验(两样本)

参数:

参考: https://www.jianshu.com/p/f30d1fe877ea

5.3 非参数检验:Kruskal-Wallis(KS)秩和检验(多样本)

5.4 Deseq两组reads count差异分析

如何使用R语言画出漂亮的图,颜色很重要,既要协调,又有有一定的分辨力。

可以拿到任意多个颜色,当然颜色越多,分辨力越低。

barplot(rep(1,8), col=rainbow(8),border=NA)

rainbow(8)

[1] "#FF0000FF" "#FFBF00FF" "#80FF00FF" "#00FF40FF" "#00FFFFFF" "#0040FFFF"

[7] "#8000FFFF" "#FF00BFFF"

barplot(rep(1,20), col=rainbow(20),border=NA) #分辨力降低

par(mfrow=c(4,1), mar=c(0,2,2,0) )

n=10

#heat.colors()从红色渐变到黄色,再变到白色

barplot(rep(1,n), col= heat.colors(n), border=NA, main="heat.colors") 

#terrain.colors() 从绿色渐变到黄色,再到棕色,最后到白色 

barplot(rep(1,n),col=terrain.colors(n), border=NA, main="terrain.colors")

#topo.colors() 从蓝色渐变到青色,再到黄色,最后到棕色 

barplot(rep(1,n),col=topo.colors(n), border=NA, main="topo.colors")

#cm.colors() 从青色渐变到白色,再到粉红色

barplot(rep(1,n),col=cm.colors(n), border=NA, main="cm.colors")

(1)

library(RColorBrewer)

display.brewer.all() #显示全部颜色集合

# 挑选某一个集合

#barplot(rep(1,8),col=brewer.pal(8,"Dark2")[1:8]) #基础语法

myColors=brewer.pal(8,"Dark2")[1:8] #Dark2主题有8种颜色

par(mfrow=c(4,1), mar=c(0,2,2,0) )

barplot(rep(1,8),col= myColors, main="Dark2"  )

#

n=15 #nrow(df)

barplot(rep(1, n ),col= colorRampPalette(colors = myColors)( n ),main="Default:linear") #则由8种生成15种颜色

barplot(rep(1, n ),col= colorRampPalette(colors = myColors, interpolate ="linear")( n ),main="linear" ) #插值方式

barplot(rep(1, n ),col= colorRampPalette(colors = myColors, interpolate ="spline")( n ),main="spline") #插值方式

colSet2 # 获取颜色16进制表示

# [1] "#1B9E77" "#D95F02" "#7570B3" "#E7298A" "#66A61E" "#E6AB02" "#A6761D" "#666666"

解释:

n=5barplot(rep(1,n), col= colorRampPalette (colors = c('red', 'white'))( n ))

colorRampPalette 函数可以混合任意两种及更多颜色,通过插值,生成更多色彩。

(2) 目测其他几个预制颜色集合

n=8barplot(rep(1,n),col= brewer.pal(n,"Set2")[1:n] ) # set2 共8种颜色

ref:

biomooc.com