关于FSL的demean

请问一下:在fsl的命令中,有一个-D(demean)的选择,如果手动去平均了,再添加-D之后是否改变原先的意义?

·问题情景:三组比较(若每组2人),将年龄、性别为协变量(已手动去平均),设计/对比矩阵和命令如下:

G1 G2 G3 age sex

1 0 0 -0.1 0.1

1 0 0 0.1 0.1

0 1 0 0.2 -0.1

0 1 0 -0.2 -0.1

0 0 1 -0.1 0.1

0 0 1 0.1 -0.1

G1 G2 G3 age sex F
c1 1 0 0 0 0 1
c1 0 1 0 0 0 1
c1 0 0 1 0 0 1

randomise -i input.nii.gz -o stat_design -m brainmask.nii.gz -d design.mat -t design.con -f design.fts -T -D -n 500
比较了加-D和不加-D,发现添加-D显著的区域更多,所以不太确定是否需要加-D?

randomise的-D选项的话,会同时对y(MRI数据)和X(设计矩阵)进行demean(也就是均值为0)。你如果手动demean,只是把X的均值去掉了,没有对y进行操作。因为你的X里有截距项,所以y不应该进行demean,因此不应该使用-D选项。可以参考FSL邮件列表里专家的回答:https://www.jiscmail.ac.uk/cgi-bin/wa-jisc.exe?A2=ind2108&L=FSL&D=0&P=107809

感谢回复,那根据这个的话,也就是说不管是2组间比较还是大于2组的比较都不用加-D选项,如果考虑协变量的话,手动demean就可以了吗?
1、我试了一下,如果是两组间比较时,加-D和不加结果是一样的,但是三组比较-D的影响较大,不知道这个如何解释。
2、如果比较ROI-wise和voxel-wise的分析,我得到的结果是 ROI-wise显著的部分被包含在voxel-wise(randomize -T -D)的显著的区域中,但是voxel-wise(randomize -T)的结果不显著并且不包含ROI有差异的部分,不知这个结果如何理解?

我的理解是:(1)只要设计矩阵里有截距项,就不用-D选项。只有当设计矩阵里没有截距项时,-D选项才是必须的,比如FSL wiki里的这个例子:https://fsl.fmrib.ox.ac.uk/fsl/fslwiki/GLM#Single-Group_Average_with_Additional_Covariate。(2)协变量(比如年龄等)是否需要demean,取决于是否检验的是截距项的显著性。如果是,则必须要demean(但是实际情况会更复杂一些,其实demean与否影响的是对于系数的解释,通常demean是更合理的);如果不是,是否demean不会影响结果;(3)如果设计矩阵中有截距项,那么-D选项是否会影响结果取决于是否检验的是截距项的显著性,比如F检验的是G1=G2=G3=0,显然是检验的截距项的显著性,所以会影响结果。如果是T检验,则检验的是G1-G2的差异的显著性,所以不会影响结果。(3)我自己一般都以FSL wiki的为准,如果实在拿不准,就去FSL邮件列表里提问,FSL专家的回答应该是可以信赖的。(4)ROI-wise/voxel-wise结果的异同,我觉得都有可能,而且我自己在分析中也遇到过,有时候只有其中一个显著,有时候两个都显著、但是脑区不同等等。这并不能作为是否加-D选项的依据。(5)我自己也是属于半懂不懂的水平,所以也建议你去FSL邮件列表里问问专家,应该会很有收获。

好的,非常感谢,其实之前我有问过,不过发了两次邮件都没有人回复T^T

明白了。我以前在邮件列表里问问题,绝大多数是回复的。如果没有回复,我会自己回复一下把邮件推到时间线上,不过即使这样,还是有少量问题没有回答。不过关于-D选项这个问题,邮件列表里已经有很多讨论了,你可以都看一看,有不清楚的,可以发到论坛里我们一起研究一下。

好的,感谢,还想问一下关于统计的知识,如果是三组比较的话,用ANOVA和F检验之间有什么区别(https://fsl.fmrib.ox.ac.uk/fsl/fslwiki/GLM#F-Tests_.28Inter-Group_differences.2C_no_repeated_measures.29)(https://fsl.fmrib.ox.ac.uk/fsl/fslwiki/GLM#ANOVA:_1-factor_4-levels__.281-way_between-subjects_ANOVA.29

你给出来的两个链接都是one-way ANOVA,只是设置contrast的方式不一样,结果应该是完全一样的。不过我也好奇为啥FSL要在两个地方重复说。

emm我尝试了一下,感觉两个的tfce_corrp_fstat文件结果不一样,而且,下面的ANOVA检验(是否加-D)结果不影响,不过如果是F检验那里(是否加-D)影响特别大,(感觉自己统计知识非常匮乏,没有办法从理论去解释)

我这边没有测试过,我想了一下,应该是我理解错了。我先说一下我现在的理解,再说一下前面为啥可能错了。

对于contrast 1:
A B C
1 0 0
0 1 0
0 0 1
检验的零假设是A=0, B=0, C=0,也就是说A, B, C组中任意一组的均值是否为0(作为对比,one-sample T检验的是一组的均值是否为0,这里是对三组而言。由于-D选项影响截距项的检验,所以是否设置-D选项就会影响这个contrast的结果。

对于contrast 2:
A B C
1 0 -1
0 1 -1
检验的零假设是A-C=0,B-C=0,也就是说检验的是任意两组之间的差异是否为0,即为one-way ANOVA所检验的假设。正如前面提到的,-D选项不影响差异的检验。

因为contrast 1我没有用过,所以我一眼看去以为检验的零假设是A=B=C=0(前面也提到了),但实际上并没检验A=B=C,只是A=0, B=0, C=0。当然,这是我根据你的测试结果反过来理解的。我自己对于contrast背后的数学原理也是不清楚的,只是根据wiki上的设置试图去“理解”,到底数学上是不是这样的,我还是不确定的,仅供你参考。所以,我在数据分析过程中会按照官方教程去操作,如果不确定的,都需要去邮件列表里确认一下,根本原因就是数学上不完全懂,没有信心。不过你的测试也解决了我前面的困惑,为啥FSL会在两个地方“重复”一样的东西,其实检验的是不同的零假设。

我又在FSL的邮件列表里搜索了一下,有一个相关的问题是我没有考虑到的:https://www.jiscmail.ac.uk/cgi-b … ;L=FSL&P=R48322

在解读contrast 1的含义的时候(假设设计矩阵就是最开始的问题的样子),也要考虑到是否用了-D选项。如果加了-D选项,那么contrast 1:

A B C
1 0 0
0 1 0
0 0 1
每一行就不再表示每组的均值了,而是每组与所有组均值的差异,比如第一行表示的是mean(A) - mean(A+B+C),在这种情况下,contrast1检验的零假设就是A=B=C,也即是任意两组之间的差异是否为0。所以结果应该和contrast 2:
A B C
1 0 -1
0 1 -1
结果是完全一样的(在contrast 2的情况下,无论是否加-D选项)。所以你最开始的做法里加-D选项的结果是正确的。

明白啦,不过还有个问题。
· FSL的ANOVA分析,三组间比较的对比矩阵中可以添加t-test,那么这些t-test的结果是post-hoc的吗,是否经过组间的多重比较校正?(看到有帖子说是基于全脑的,也有帖子说the main-advantage of having all 6 t-contrasts in your design is for determining effect directionality of significant f-test voxels.感觉有点懵)
· 还是说事后比较 需要把f-test显著的区域当做mask 再去做两组间比较?

一般有两种做法,一种是先做voxel-wise的F-test,如果显著了,再做voxel-wise的T-test作为post-hoc,如果是这种做法,就可以在设置F contrast的时候把t contrast也设置了。另一种是,根据voxel-wise的F-test显著的结果作为ROI mask,做post-hoc的时候,就用ROI的均值来做了。之所以会出现这两种做法的原因是,voxel-wise的F-test和T-test,结果并不一定在同样的脑区,由于多重比较校正的原因。我个人倾向于直接做两两的T-test,不用做F-test。做F-test的原因是控制假阳性率,只要在做T-test的时候校正比较次数可以到达同样的效果。

这个应该是比较经典的问题了,你可以去FSL邮件列表再搜一搜,看看专家们怎么理解这个问题。另外,你如果看到什么资料感觉不清楚的,也可以贴到这里,我可以和你一起看看。

想问一下 ROI的均值是什么意思?

先做F-test得到显著的ROI mask(或cluster mask),然后用这个mask去提取指标的均值(比如,你比较的是灰质体积,这里的均值就是显著脑区灰质体积的均值),最后用这个均值去做post-hoc,看看具体差异的方向。这种方法我觉得也是广泛接受的。

好的!明白了,谢谢