孟德尔随机化——踩一个大家都没踩过的坑

孟德尔随机化——踩一个大家都没踩过的坑

此次研究,我用的前人研究的数据,为Excel。(废话的了,GWAS数据都是前人数据好的么)

  • 第一步,对别人的综合大表进行拆分

  • 第二部,将Excel另存csv,听起来似乎没什么大毛病哈

一路坎坎坷坷搞代码,搞数据,终于到了收割成果的时候。发现为什么我的F值算出来,不同的SNP,F值居然一样。

努力寻找原因:

首先,F值的算法如下
F s t a t i s t i c = ( ( N − K − 1 ) K ) ( R 2 1 − R 2 ) F statistic = (\frac{(N-K-1)}{K})(\frac{R^2}{1-R^2}) Fstatistic=(K(NK1))(1R2R2)
不同的SNP的F值是否应该一样?

公式中,一项研究确定了入组SNP后,N和K就是已知常量了。那么公式中的未知的就是 R 2 R^2 R2,

R 2 = 2 × ( 1 − M A F ) × M A F × β S D R^2=2 \times (1-MAF) \times MAF \times \frac{\beta}{SD} R2=2×(1MAF)×MAF×SDβ

MAF由EAF算得。那么每个SNP的EAF、β、SD都不一样。对应的F值怎么会一样呢?!

数据读取是自动化操作的,没有人为干预过程

那么,问题就出在源头数据上。

源数据是从前人研究中找来的,也不会有问题。那么问题就在于整理数据上。

排查了整整两天。

发现Excel中数值列的格式为“常规”。虽然在Excel表中显示的时候表面上看起来还是一个正常的数字。但是在转换为CSV时出现了数据丢失,变成了0

于是重新整理重新算。正确结果就算出来了。

真是有一种经过惊涛骇浪不死,阴沟里翻船的感觉。。。

你可能感兴趣的:(r语言)