Estatística

Ajustar p-valores online: FDR de Benjamini-Hochberg, Holm e Bonferroni

Corrija uma coluna de p-valores para comparações múltiplas, com os mesmos resultados do p.adjust() do R. Envie CSV ou Excel, sem cadastro.

Arraste seu arquivo para cá

ou escolha um arquivo | cole os dados


Exemplo
Genep
TP530,001
BRCA10,02
MYC0,04
EGFR0,30
Genepp ajust. (FDR BH)
TP530,0010,004
BRCA10,020,04
MYC0,040,0533
EGFR0,300,3

Uma nova coluna com os p-valores ajustados por Benjamini-Hochberg.

Saiba mais

Como ajustar p-valores

Um guia completo, passo a passo.

Passo 1: envie a tabela de resultados

Envie uma tabela com uma coluna de p-valores, como a saída de uma análise de expressão diferencial, de um GWAS, de um experimento de triagem ou de qualquer conjunto de testes. Valores em notação científica, como 3.2e-08, são lidos corretamente.

Passo 2: escolha a coluna e o método

Na ferramenta Ajustar p-valores, escolha a coluna dos p-valores e o método:

  • Benjamini-Hochberg (FDR): controla a taxa de falsas descobertas; a escolha padrão para dados ômicos e triagens.
  • Benjamini-Yekutieli: controle do FDR válido para qualquer dependência entre os testes; mais conservador.
  • Holm: controla o erro por família; sempre pelo menos tão poderoso quanto Bonferroni.
  • Bonferroni: a correção por família mais simples e mais conservadora.

Passo 3: use a nova coluna

Uma nova coluna com os valores ajustados é adicionada à tabela (você pode escolher o nome). Depois, use a ferramenta Filtrar para manter, por exemplo, as linhas com p-valor ajustado abaixo de 0,05, e exporte em CSV ou Excel.

Detalhes técnicos e perguntas frequentes

Quando você roda centenas ou milhares de testes, cerca de 5% dos testes sem efeito real chegam a p < 0,05 só por acaso. A correção para comparações múltiplas transforma os p-valores brutos em valores ajustados, que podem ser comparados diretamente com o nível de significância. Os métodos de FDR limitam a proporção esperada de falsos positivos entre os resultados significativos, enquanto Holm e Bonferroni limitam a chance de haver um único falso positivo que seja.

O flowingTable implementa os mesmos algoritmos do p.adjust() do R (métodos BH, BY, holm e bonferroni), com resultados idênticos. Células vazias são ignoradas e continuam vazias, sem contar como testes. O ajuste é um passo normal do seu fluxo, então pode ser desfeito ou reaplicado a um novo arquivo.


Perguntas frequentes

Qual a diferença entre a correção FDR e a de Bonferroni?

Bonferroni (e Holm) controlam o erro por família: a chance de pelo menos um falso positivo entre todos os testes. Isso é muito rigoroso quando há muitos testes. O procedimento de Benjamini-Hochberg controla a taxa de falsas descobertas, ou seja, a proporção esperada de falsos positivos entre os resultados declarados significativos, e preserva muito mais achados verdadeiros em estudos grandes, como RNA-seq.

Os valores ajustados são iguais aos do p.adjust() do R?

Sim. Os métodos BH, BY, Holm e Bonferroni seguem os mesmos algoritmos do p.adjust() do R e produzem valores idênticos, incluindo a monotonicidade e o limite em 1.

O p-valor ajustado por BH é a mesma coisa que um q-valor?

O p-valor ajustado por Benjamini-Hochberg costuma aparecer como FDR ou q-valor nos programas, e é usado do mesmo jeito: mantenha as linhas com valor ajustado abaixo do FDR escolhido, como 0,05. O método de q-valor de Storey é outro estimador, que pode ser um pouco menos conservador.

O que acontece com células vazias ou inválidas na coluna de p-valores?

Células vazias continuam vazias e não contam como testes, o mesmo comportamento do p.adjust() com NA. Valores fora do intervalo de 0 a 1 são recusados com uma mensagem de erro, para que uma coluna errada não seja ajustada por engano.