事情是这样的,刚开始接触GWAS就一定会接触到数据质量控制这个东西。我们可以看到网络上各种各样的指导,都是分为individual quality control and snp quanlity control。具体哪个优先,各有各的说法。结合陈文燕博主给的建议,主流行还是先进行individual QC再进行SNPs QC。接着,我们知道两部分QC各有多个小步骤,那么分析这些步骤的顺序应该怎么走才比较合适呢?我根据不同tutorial尝试了3种不同的办法,结果还是有区别。以下疑问是陈文燕博主帮忙解答的,再次表示感谢。博主的博客就是宝藏,有入门的小白建议多看看,链接:https://www.cnblogs.com/chenwenyan/p/11803311.html 。

一、       方法1(基因公司imputation前质控步骤):

  1.     指令:plink --bfile data --mind 0.1 --geno 0.05 --maf 0.01 --hwe 0.0001 --make-bed --out data_qc.
  2.     查看日志文件可见:

3.      问题:

               (1)             同样一长串的方法,我将指令改为:plink --bfile data --chr 1-22 --geno 0.05 --hwe 0.0001 --maf 0.01 --mind 0.1 --make-bed --out qc2.结果一样。接着换成:plink --bfile data --mind 0.1 --hwe 0.0001 --geno 0.05 --maf 0.01 --chr 1-22 --make-bed --out qc3.结果与qc1\qc2都是一样的(479367个SNP和1189个体)。也就是说如果一次性输入一长串质量控制指令,无论顺序是怎样的,结果都一样?

     答案:是的,一长串命令上去以后,PLINK 会按照他们默认的顺序执行命令。

               (2)  上述三个指令,我们在日志log中的分析过程都可以看到,它是按照--chr --mind --geno --hwe --maf对结果进行一步一步的展示。

               (3)  是不是平时真实分析步骤都是一连串直接写上去的?答案:是的。

二、       方法2(根据方法1的log展示的分析步骤,每个指令一步一步进行):

  1.      我按照这样方法1 日志展示的步骤进行一步一步分析:

                   1)      plink --bfile data --chr 1-22 --make-bed --out step1

                   2)      plink --bfile step1 --mind 0.01 --make-bed --out step2

                   3)      plink --bfile step2 --geno 0.05 --make-bed --out step3

                   4)      plink --bfile step3 --maf 0.01 --make-bed --out step4

                   5)      plink --bfile step4 --hwe 0.0001 --make-bed --out step5

         2.      得出的结果是:479367个SNP和1189个体(与方法1相同)。

三、       方法3(用方法2相同阈值,但步骤不同):

          1.      我按照这样方法1 日志展示的步骤进行一步一步分析:

                   1)      plink --bfile data -- geno 0.05 --make-bed --out step1

                   2)      plink --bfile step1 -- maf 0.01 --make-bed --out step2

                   3)      plink --bfile step2 -- hwe 0.0001 --make-bed --out step3

                   4)      plink --bfile step3 -- chr 1-22 --make-bed --out step4

                   5)      plink --bfile step4 -- mind 0.01 --make-bed --out step5

          2.      得出的结果是:479811个SNP和1153个体(与方法1和2完全不同)。

                     原因:这个步骤和“方法1和2”的区别在于方法3是先进行SNP QC ,再进行样本QC

四、问题:

   1.      我看群主的帖子步骤是:

          1)         先--mind --het --check.

          2)         然后--hwe --geno --maf.

   2.      MAT的GWAS_Tutorial-master的步骤又不一样:

           --geno --mind --sex --maf --hwe --het.

   3.      质量控制一般是几个参数一起塞进一条plink语句中吗?如果不是,有步骤顺序要求吗(毕竟步骤不一样结果相差贼大)?

            答案:可以塞进一条plink进行分析。正确的顺序是先执行样本QC, 再执行SNP 位点QC(这点可以看文献,基本都是这个顺序):

                      1)先--mind --het --check;2)然后--hwe --geno --maf.

 

  1. 4.      如果要自己做Imputation,那么imputation之前的质量控制的步骤又有什么要求吗?如果没要求,那每种不同质控顺序得到的结果都不一样?答案:IMPUTATION质量控制所有参数与“方法1和2”一样。QC完一会再进行imputation,然后再次执行“方法1和2”的质量控制。

关于GWAS的质量控制步骤顺序疑问?不同指导不同文献的建议各不相同。的更多相关文章

  1. PrepareStatement对象进行批处理的典型步骤顺序

    https://www.yiibai.com/jdbc/preparestatement-batching-example.html 以下是使用PrepareStatement对象进行批处理的典型步骤 ...

  2. Centos 5.6安装Mysql(步骤,疑问)

    1.安装步骤 yum install mysql yum install mysql-server yum install mysql-devel chgrp -R mysql /var/lib/my ...

  3. 关于Kettle的事务和转换内步骤的顺序执行

    关于Kettle的事务和转换内步骤的顺序执行 近来有项目中遇到Kettle事务处理和转换内步骤顺序执行的问题.为此进行了研究,找到了一个解决办法. 在Kettle中,一个Job内的转换,缺省是顺序执行 ...

  4. nodejs添加路由route步骤详解

    首先,毋庸置疑, 新建一个基础express站点.建好之后, 有三个文件需要code(当然,三个步骤顺序随意). 下面以添加一个'/about'为例说明. 1. 在views文件夹里,新建一个jade ...

  5. Shell命令的执行顺序

    shell执行命令的步骤顺序如上图,看起来有些复杂. 当命令行被处理时,每一个步骤都是在Shell的内存里发生的;Shell不会真的把每个步骤的发生显示给你看. 所以,你可以假想这事我们偷窥Shell ...

  6. dockerfile里面的内容编写顺序,必须严格按照顺序编写,否则编译不成

    完整文档请参照https://www.cnblogs.com/effortsing/p/10480972.html 这里只介绍dockerfile里面的步骤顺序 cat>/home/jenkin ...

  7. 小陈现有2个任务A,B要完成,每个任务分别有若干步骤如下 一道网上没啥题解的难题(至少我是这么觉得的)

    小陈现有2个任务A,B要完成,每个任务分别有若干步骤如下:A=a1->a2->a3,B=b1->b2->b3->b4->b5.在任何时候,小陈只能专心做某个任务的一 ...

  8. Unity学习疑问记录之脚本生命周期

    总的来说unity的脚本生命周期分几个部分:编辑→初始化→游戏逻辑→渲染→GUI→Teardown首先是Reset,顾名思义:重置.在什么情况下调用呢?1.用户第一次添加组件时.2用户点击见组件面板上 ...

  9. UPDATE语句中SET部分列赋值的先后顺序有影响么?

    昨天研发同事问我个问题,UPDATE语句中SET部分列赋值的先后顺序会影响结果么?以前没考虑过这个问题,因为通常我们都会UPDATE时给列赋予一个确定的值,而不是一个依赖于其他列的值. 测试环境: D ...

随机推荐

  1. 学习String源码的部分方法

    先看构造器: private final char value[]; //char类型的数组 以下均会用到 private int hash; //缓存字符串的哈希值 //以下均会用到 public ...

  2. Java基础语法:标识符

    Java所有的组成部分都需要名字. 类名.变量名 以及方法名 都被称为标识符. 一.规则 Ⅰ.首字符 规则:所有的标识符都应该以字母(A-Z 或者 a-z).美元符($).下划线(_)开始. 示例:t ...

  3. Kubernetes-7.Ingress

    docker version:20.10.2 kubernetes version:1.20.1 本文概述Kubernetes Ingress基本原理和官方维护的Nginx-Ingress的基本安装使 ...

  4. CSharp使用ANTLR4生成简单计算Parser

    ANTLR简介 ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, pr ...

  5. 后端程序员之路 42、Semaphore

    前面学习了Pthreads,了解了线程和线程同步,而同步这个东西,与信号量是密不可分的.下面讨论的主要是Pthreads里的semaphore.h,而不是sys/sem.h [Linux]线程同步之信 ...

  6. MySQL确认注入点

    目录 WHERE子句后面的注入点 逻辑符号AND.OR other order by union limit table WEB渗透测试流程中,初期工作是进行信息收集,完成信息收集之后,就会进行漏洞测 ...

  7. 大家最常用的编程论坛是哪个呢,欢迎评论!!掘金16 juejin 简书41 jianshu 博客85 csdn137 csdn

    软件编程交流论坛 掘金  16 juejin 简书  41 jianshu 博客  85 cnblogs csdn  137 csdn stackoverflow 0 思否 github 大家最常用的 ...

  8. LeetCode-二叉搜索树的第k大节点

    二叉搜索树的第k大节点 LeetCode-面试题54 需要充分了解二叉搜索树的性质. 利用中序遍历的思想,采用相反的思想:先遍历右节点再遍历左节点. /** * 给定一棵二叉搜索树,请找出其中第k大的 ...

  9. influxDB安装部署及入门

    1.下载安装包,本文使用1.7.7版本 https://portal.influxdata.com/downloads/ 2.安装 yum localinstall influxdb-1.7.7.x8 ...

  10. js 判断 是否在当前页面

    1.使用visibilitychange 浏览器标签页被隐藏或显示的时候会触发visibilitychange事件. document.addEventListener("visibilit ...