FDR(false discovery rate),是统计学中常见的一个名词,翻译为伪发现率,其意义为是 错误拒绝(拒绝真的(原)假设)的个数占所有被拒绝的原假设个数的比例的期望值。

compute.FDR {brainwaver}使用图论进行可视化和参数化的多变量时间序列的基本小波分析

def computeFDR(parray, q=0.05):
if min(parray) < 0 or max(parray) > 1: raise ValueError("请检查P值是否在0~1范围内!\n") probs = sorted(parray)
l = len(probs) correct = sum([1/i for i in range(1, l + 1)]) fdr = [i/l*(q/correct) for i in range(1, l + 1)] sig = [0] * l for i in range(l):
if probs[i] <= fdr[i]:
sig[i] = 1 maxsig = max([i*j for i, j in zip(sig, range(1, l))]) return 0 if maxsig==0 else probs[maxsig]

参考资料

http://www.gipsa-lab.grenoble-inp.fr/~sophie.achard/brainwaver/compute.FDR.html

05-20 19:42