这个也是我在网上找的,因为我也需要比较两列数据,感觉似乎有用而且解释得很详细,仅供参考。
我们在现实中经常遇到两个总体是相关的测量结果的比较,比如,考察同一组人在参加一年的长跑锻炼前后的心率有无显著差异。这时,每个人一年前的心率和一年后的心率是相关的,心率本来较快的人锻炼后仍相对于其它人较快。所以,检验这样的成对总体的均值不能使用两样本t检验的方法,因为独立性条件不再满足。这时,我们可以检验两个变量间的差值的均值是否为零,这等价于检验两组测量值的平均水平有无显著差异。
检验单个样本的均值是否为零只要使用UNIVARIATE过程,在UNIVARIATE过程的矩部分给出了均值为零的t检验和符号检验、符号秩检验的结果。例如,我们想知道SATM和SATV这两门考试的成绩有无显著差异(SATM平均值为595.3,SASTV平均值为504.6,我们希望知道差异是否显著)。因为这两个成绩是同一个学生的成绩,所以它们之间是相关的(学得好的学生两科一般都好,学得差的一般两科都差),不能用独立两样本的t检验,但可以计算两变量间的差DMV =SATM-SATV,检验差值变量的均值是否为零。如果否定,则可认为SATM和SATV的平均值有显著差异。
为此,我们先用一个数据步计算差值,然后对差值变量用UNIVARIATE过程进行分析就可以得到结果。程序如下:
data new;
set sasuser.gpa;
dmv = satm - satv;
keep dmv;
run;
proc univariate data=new;
var dmv;
run;
结果(部分)如下:
Univariate Procedure
Variable=DMV
Moments
N 224 Sum Wgts 224
Mean 90.73661 Sum 20325
Std Dev 92.82931 Variance 8617.28
Skewness -0.10367 Kurtosis -0.34625
USS 3765875 CSS 1921653
CV 102.3063 Std Mean 6.202419
T:Mean=0 14.62923 Pr>|T| 0.0001
Num ^= 0 215 Num > 0 181
M(Sign) 73.5 Pr>=|M| 0.0001
Sgn Rank 9757.5 Pr>=|S| 0.0001
我们只要看其中的三个检验:T: Mean=0是假定差值变量服从正态分布时检验均值为零的t 统计量值,相应的p值Pr>|T|为0.0001在0.05水平下是显著的,所以可认为两科分数有显著差异。M(Sign)是非参数检验符号检验的统计量,其p值Pr>=|M|为0.0001在0.05水平下是显著的,结论不变。Sgn Rank是非参数检验符号秩检验的统计量,其p值Pr>=|S|为0.0001 在0.05水平下是显著的,结论不变。所以这三个检验的结论都是两科成绩有显著差异。
如果t检验对立假设是单边的,其p值算法与上面讲的两样本t检验p值算法相同。
在SAS/INSIGHT中比较成对样本均值的显著差异,同样是先计算两变量的差值变量(在“Edit | Variables | Other”菜单中,指定两个变量,指定两个变量间的计算为减法,则可以生成差值变量,可以用数据窗口菜单的“Define Variables”改变量名),然后对此差值变量选“Analyze | Distribution”,选“Tables | Location Tests”并选中t检验、符号检验和符号秩检验即可在分布窗口显示结果。