来源: http://blog.sciencenet.cn/blog-479412-572049.html,http://52brain.com/thread-15512-1-1.html

SPM8允许两种FDR校验。一个是voxel-wise FDR,另一个是topological FDR。
如果要做voxel-wise FDR 校验,就把spm_defaults里的68行的defaults.stats.topoFDR 改为0。
(有很多朋友下载下来的spm在处理结果是只显示FWE矫正和NOR,但是FWE矫正又太严格,我们往往需要FDR矫正来进行数据处理。spm的设置是在spm根目录下的spm_defaults这个文件。需要再matlab中调用才能编辑。在matlab中输入edit spm_defaults,在68行有defaults.stats.topoFDR = 1;  你把1改成0即可。当然你也可以对默认阈值、默认设置的激活体素大小进行设置。)
此时SPM8里的FDR按钮会出现。在SPM里点results,选FDR校验即可。
如果要做topological FDR 校验,就把defaults.stats.topoFDR设为1(默认是1)。
首先在SPM8里点results——None(无校验)——T threshold或p value(自己随意设,默认的0.001也可以)——extent threshold(默认0即可)。
然后在左下侧窗口点whole brain会得到results table。找到FDRc对应的值。然后再次点Results——None——T threshold或p value(输入上一次的值,例如上一次是0.001,这一次还是0.001)——extent threshold(输入FDRc对应的值)。这样得到的激活图就是cluster-wise FDR校验的结果,也就是topological FDR校验的结果。
SPM里面有peak-level FDR,见result table里面的FDRp,用FDRp对应的值作为height threshold得到的结果就是peak-level FDR的结果。用FDRc对应的值作为extent threshold得到的结果就是topological FDR(或cluster-wise FDR)的结果。
自己对topological FDR原理的理解(因为内部原理很复杂,不是特别懂,只写出简单理解,留着以后补充):topological FDR是基于高斯随机场理论,认为voxel之间不是独立的,超过T threshold的voxel 构成了一个个cluster,然后对这些cluster进行FDR校验,这样独立单元(原来是voxel总个数,而现在就是cluster的个数)就大大减小了。这种校验的错误发现率是小于0.05的,不论T threshold 设为多大。而原来的voxel-wise FDR认为voxel之间是独立。而实际的fMRI数据经过平滑之后,voxel之间是不独立的,因此对于一个激活的脑区来说,用这种voxel-wise FDR校验得到的错误发现率就很高。
 
参考文献
 Justin R. Chumbley, Karl J. Friston.False discovery rate revisited: FDR and topological inference using Gaussian random fields.NeuroImage 44 (2009) 62–70.

SPM FDR校正的更多相关文章

  1. 学习笔记50—多重假设检验与Bonferroni校正、FDR校正

    总结起来就三句话: (1)当同一个数据集有n次(n>=2)假设检验时,要做多重假设检验校正 (2)对于Bonferroni校正,是将p-value的cutoff除以n做校正,这样差异基因筛选的p ...

  2. FDR校正

    一.假设检验 假设检验的基本思路是: 设立零假设(null hypothesis)H0,以及与零假设H0相对应的非零假设(alternative hypothesis)H1,在假设H0成立的前提下,计 ...

  3. notes:spm多重比较校正

    SPM做完统计后,statistical table中的FDRc实际上是在该p-uncorrected下,可以令FDR-correcred p<=0.05的最小cluster中的voxel数目: ...

  4. matlab FDR校正

    http://home.52brain.com/forum.php?mod=viewthread&tid=27066&page=1#pid170857 http://www.mathw ...

  5. 学习笔记49—matlab FDR校正

    matlab自带函数mafdr,当ttest数较多时,可直接用[FDR, Q]=mafdr(P):但是Storey procedure在p值少于1000个时会崩溃,此时应改用BH FDR方法:mafd ...

  6. 假设检验:p-value,FDR,q-value

    来源:http://blog.sina.com.cn/s/blog_6b1c9ed50101l02a.html,http://wenku.baidu.com/link?url=3mRTbARl0uPH ...

  7. MCP|MZL|Accurate Estimation of Context- Dependent False Discovery Rates in Top- Down Proteomics 在自顶向下蛋白组学中精确设定评估条件估计假阳性

    一. 概述: 自顶向下的蛋白质组学技术近年来也发展成为高通量蛋白定性定量手段.该技术可以在一次的实验中定性上千种蛋白,然而缺乏一个可靠的假阳性控制方法阻碍了该技术的发展.在大规模流程化的假阳性控制手段 ...

  8. 浅谈多重检验校正FDR

    浅谈多重检验校正FDR Posted: 四月 12, 2017  Under: Basic  By Kai  no Comments 例如,在我们对鉴定到的差异蛋白做GO功能注释后,通常会计算一个p值 ...

  9. FDR错误发现率-P值校正学习[转载]

    转自:https://baike.baidu.com/item/FDR/16312044?fr=aladdin  https://blog.csdn.net/taojiea1014/article/d ...

随机推荐

  1. Android 从Gallery获取图片

    本文主要介绍Android中从Gallery获取图片 设计项目布局 <LinearLayout xmlns:android="http://schemas.android.com/ap ...

  2. CATransform3D方法汇总

    CATransform3D三维变换 struct CATransform3D { CGFloat m11, m12, m13, m14; CGFloat m21, m22, m23, m24; CGF ...

  3. Swift 初步了解

    Swift 初步了解 前言: 本篇博客会结合OC对Swift进行简单介绍. OC 用NSLog输出日志 NSLog(@"旭宝爱吃鱼"); Swift 用print输出日志 prin ...

  4. c#.net 使用NPOI导入导出标准Excel (asp.net winform csharp)

    尝试过很多Excel导入导出方法,都不太理想,无意中逛到oschina时,发现了NPOI,无需Office COM组件且不依赖Office,顿时惊为天人,怀着无比激动的心情写下此文. 曾使用过的方法 ...

  5. aspx页面前端使用js 调用aspx.cs后台的方法,不回传

    本次使用 Ajax.dll,AjaxPro.dll 两个类库 1.首先添加引用:Ajax.dll,AjaxPro.dll 文件在 Libiary 目录下 2.配置 WebConfig 属性 将 下面2 ...

  6. U-BLOX GPS 模块及GPRMC指令解析

    受朋友所托,调试一款GPS模块,该模块是UBLOX的NEO-6M GPS模组.想到用这款GPS的人较多,自己日后也有可能在用到这个模块,就写下这份笔记. 1. 介绍 基本信息如下: 1, 模块采用U- ...

  7. visual studio 2015 搭建python开发环境,python入门到精通[三]

    在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...

  8. 【转】RHadoop实践系列之一:Hadoop环境搭建

    RHadoop实践系列之一:Hadoop环境搭建 RHadoop实践系列文章,包含了R语言与Hadoop结合进行海量数据分析.Hadoop主要用来存储海量数据,R语言完成MapReduce 算法,用来 ...

  9. mongo 主从数据不同步

    在从库上执行如下命令: repset:SECONDARY> rs.slaveOk()repset:SECONDARY> db.runCommand({"resync": ...

  10. Makefile隐含规则

    两个隐含规则; 将所有的name.o的依赖自动推导为name.c并使用规则$(CC) -c $(FLAGS) $(CPPFLAGS)得到目标.这个规则中只有-c是隐含规则中有的,后面两个变量是留给用户 ...