大家看论文的时候经常看到的一些实验数据都是以例数、均数、标准差表示的。如果想验证作者的统计结论,只有2组时还可以根据ttest的公式进行计算,2组以上进行手工计算就很麻烦,而一些常用的统计软件好像也没提供这一功能。 一、首先强调一点,不管使用任何统计分析软件,如果不知道样本量,仅根据均值和标准差是没有办法进行T检验和方差分析的。 以方差分析为例,从最原始的角度给出详细理由如下: 先看方差分析表,大家都很熟悉了吧,这里就不再介绍原理了。
1.假设共有k组数据,每组分别有n1,n2,n3,…,nk个数据点,每组均值分别为
每组数据的标准差分别为S1,S2,S3,…,Sk。(这里的n1,n2,n3,…,nk是不知道的,n总=n1+n2+n3+,…,+nk当然也就不知道了) 2.做方差分析的最后一步是计算F值: 其中组间均方:
组内均方:
3.再其中组间离差平方和:
,其中是第j组的组内均数, 是总均数;组内离差平方和:
总的离差平方和:SST=SSA+SSE
4.对于单组数据标准差 结合组内离差平方和:
,我们尝试计算组内离差平方和SSE=S12(n1-1)+ S22(n1-1)+…+ Sk2(nk-1),显然由于不知道n1,n2,n3,…,nk,所以SSE没有办法计算;因此组内均方:
就更没有办法计算;
5.再来看组间离差平方和: , 首先是nj不知道,其次总均数也是不知道的,而仅仅根据每组数据的均值 和组数k是绝对不可能推出总均数的,所以组间离差平方和:SSA就无法求得,更不用说组间均方:MSA了. 6.那么是不是可以先捣鼓出总的离差平方和:SST=SSA+SSE呢?一看就知道了由于缺少总均数,这也是不可能算出来的。 7.更关键的是由于缺少每一组的数据个数n1,n2,n3,…,nk,方差分析的临界值F1-α就没有办法确定,因为这是与自由度有关的。 最后的结论: 仅根据均值和标准差是没有办法进行T检验和方差分析的。 如果再给出每组数据的数据点数n1,n2,n3,…,nk上述问题便可以得到解决。 再回头看看方差分析的三要素:独立性、正态性、方差齐性。在给出数据组数k,每组数据点数n1,n2,n3,…,nk,每组均值,每组数据的标准差S1,S2,S3,…,Sk。的情况下,三个前提要素是不是全部能得到保证还不一定,所以即使给出每组数据的数据点数n1,n2,n3,…,nk,也要谨慎的使用方差分析。
二、如果知道样本量、均值和标准差是怎样进行T检验和方差分析的? 从原理上讲是可行的,这一点在上面讨论中,从公式上是可以看出的。但统计软件SPSS一般不能直接实现上述计算过程。 统计软件STATA中有命令,可以实现上述问题,以T检验为例,代码格式如下: ttesti 样本数1 均数1 标准差1 样本数2 均数2 标准差2
例如使用这条命令: ttesti 11 105.45 10.87 9 102.39 14.55
结果: Two-sample t test with equal variances
------------------------------------------------------------------------------ | Obs Mean Std. Err. Std. Dev. [95% Conf. Interval] ---------+-------------------------------------------------------------------- x | 11 105.45 3.277428 10.87 98.14743 112.7526 y | 9 102.39 4.85 14.55 91.20588 113.5741 ---------+-------------------------------------------------------------------- combined | 20 104.073 2.772771 12.40021 98.26952 109.8765 ---------+-------------------------------------------------------------------- diff | 3.06 5.680602 -8.874502 14.9945 ------------------------------------------------------------------------------ Degrees of freedom: 18
Ho: mean(x) - mean(y) = diff = 0
Ha: diff < 0="" ha:="" diff="" !="0" ha:="" diff=""> 0 t = 0.5387 t = 0.5387 t = 0.5387 P < t="0.7016" p=""> |t| = 0.5967 P > t = 0.2984
从第一部分的原理来看,实际上是带入公式求值的过程,有人在EXCEL软件中按照上述公式编辑了一个宏应用,操作演示如下:
T检验:
当然还有一些小众的软件可以实现,这里就不一一详述了!
|