分享

如何根据样本例数、均数、标准差进行T-Test和ANOVA

 生物_医药_科研 2019-01-24

大家看论文的时候经常看到的一些实验数据都是以例数、均数、标准差表示的。如果想验证作者的统计结论,只有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组的组内均数,
是总均数;组内离差平方和:


总的离差平方和:
SSTSSASSE

4.对于单组数据标准差


结合组内离差平方和:


,我们尝试计算组内离差平方和
SSE=S12(n1-1)+ S22(n1-1)+…+ Sk2(nk-1),显然由于不知道n1,n2,n3,…,nk,所以SSE没有办法计算;因此组内均方:

就更没有办法计算;

5.再来看组间离差平方和:

首先是nj不知道,其次总均数也是不知道的,而仅仅根据每组数据的均值
和组数k是
绝对不可能推出总均数,所以组间离差平方和:SSA就无法求得,更不用说组间均方:MSA了.

6.那么是不是可以先捣鼓出总的离差平方和:SSTSSASSE呢?一看就知道了由于缺少总均数,这也是不可能算出来的。

7.更关键的是由于缺少每一组的数据个数n1,n2,n3,…,nk,方差分析的临界值F1-α就没有办法确定,因为这是与自由度有关的。

最后的结论:

  1. 仅根据均值和标准差是没有办法进行T检验和方差分析的

  2. 如果再给出每组数据的数据点数n1,n2,n3,…,nk上述问题便可以得到解决。

  3. 再回头看看方差分析的三要素:独立性、正态性、方差齐性。在给出数据组数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检验:


当然还有一些小众的软件可以实现,这里就不一一详述了!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多