我如何获得pp来自 Cochran-Armitage 趋势检验的值?

机器算法验证 卡方检验 p 值 遗传学 关联度量
2022-03-25 05:54:58

因此,我正在处理 GWAS SNP 数据,并希望对基因型和表型之间的关联进行几次测试。有两种表型(病例和对照)和两种或三种基因型。其中大多数是具有不同列联表的卡方检验,2×2或者2×3,其中之一是 Cochran-Armitage 趋势检验 (CATT)

一旦我构建了列联表,我可以很容易地得到一个p-value 使用Apache commons 数学库进行卡方检验。没问题。

但是,维基百科上对CATT的解释不足以让我实现它(我的统计知识有限,我还在学习中)。

就像在示例中一样,我怀疑是线性趋势,所以我的权重是t=(0,1,2),这使得公式为T至:

T(N12R2N22R1)+2(N13R2N23R1)
和一个方差
Var(T)=R1R2N(N(C2+4C3)(C22C3)2)

我检查了PLINK程序是如何做到的,因为它已经在那里实现了,但它与上述公式略有不同。那里的 C++ 源代码将对应于此:

T=(N12R2N22R1)+2(N13R2N23R1)N
Var(T)=R1R2N(N(C2+4C3)(C22C3)2)N2

然后它会像这样计算一个卡方值

χT2=T2Var(T)
并计算p-值与任何其他卡方值一样df=1

我不需要完全理解理论,只要我的程序计算正确,但理解它会给我额外的信心。

这是正确的还是合法的?这是我如何得到p-价值?

1个回答

这只是统计量的不同定义T. 调用您的统计数据T1和另一个T2. 注意T2=T1/N这就是方差的原因T2不同于T1因数1/N2. 但是您应该注意,无论哪种情况,卡方统计都是相同的。为了T2有一个因素1/N2在分子和分母中取消并且没有出现在使用的公式中T1. 无论哪种方式,您都使用相同的测试统计信息。