第二节 检验方法使用条件考察
独立性:不同案例间的取值互相独立,不受到除研究中考虑的分组因素、配对因素等研究因素之外任何其他因素的影响,其他非研究因素的影响基本可以等同于随机误差
非独立的情形:研究儿童生长发育,样本中存在兄弟、表兄弟等近亲关系
数据的非独立的影响是比较大的,因为传统统计模型均按照数据独立假设进行推导,非独立会导致数据方差估计不准确,进而导致假设检验的结果错误,很严重的数据非独立也会使得参数估计值出现偏差
最好在研究设计阶段就进良保证数据不违反独立性
数据独立性的检测:游程检验、DW统计量、自相关分析等
如果违反了独立性:采用专门的方差分析模型,或者专门对方差等进行校正,或者采用GEEs、混合效应模型等专门的非独立数据分析模型
正态性的考察:直方图、茎叶图、箱图、PP图、QQ图
PP图的经验界值,去掉趋势的上下偏离不超过0.05
正态性用建模后的残差进行假设检验,但是不推荐,样本量偏低过于迟钝,样本量较大又会过敏,除非临床试验这类问题,一般不用假设检验去考察正态性,因为临床试验本身会对样本量进行预先的计算
直方图进行正态性考察
ccss.index1.plot.hist()
箱图
ccss.index1.plot.box()
使用k-s检验,考察正态性
import scipy.stats as ss ss.kstest(ccss.index1, "norm") # 用k-s检验考察正态性,采用最大离群值进行计算,因此只要有一个强离群值就会判非正态,statistic检验统计量,pvalu p值,拒绝H0,不服从正态分布
KstestResult(statistic=0.999128160418483, pvalue=0.0)
ks = lambda x: ss.kstest(x, "norm") # 使用k-s检验考察时间分组正态性 ccss.groupby("time").index1.apply(ks)
time 200704 (1.0, 0.0) 200712 (0.9967105263157895, 0.0) 200812 (1.0, 0.0) 200912 (1.0, 0.0) Name: index1, dtype: object
使用Shapiro检验,考察正态性
ccss.groupby("time").index1.apply(ss.shapiro) # 使用Shapiro检验,考察正态性,不需要参数,shapiro默认采用median作为考察对象,而不是mean,因此比k-s较稳健,也大多使用这个方法
time 200704 (0.966885507106781, 2.2581652956432663e-06) 200712 (0.9562035202980042, 6.700251020674841e-08) 200812 (0.977051854133606, 8.660431194584817e-05) 200912 (0.9523671865463257, 4.465105973849859e-07) Name: index1, dtype: object
发现数据非正态的应对策略:进行变量变换,更换分析方法(非参数方法)
评估严重程度,t检验有一定耐受性
正偏态分布:对数变换或者平方根变换,有负值,-(最小值)+1
超过30%-60%区间的率:平方根反正弦变换
方差齐性
在各组样本含量相差不大的时,方差轻微不齐仅会对方差分析的结论有少许影响,一般而言,只要最大/最小方差之比小于3,分析结果都是稳定的;然而如果各组样本含量相差过大时,方差不齐会对方差分析造成相当大的影响
直方图考察方差齐性
ccss.index1.hist(by=ccss.time)