Calculadora Bonferroni
Um nível de significância de 0,05 dividido entre 10 comparações dá um limite de 0,005 por teste. Informe o nível original e o número de testes planejados, e compare cada valor p com esse limite mais rigoroso antes de olhar os resultados. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Alfa
- 0,05
- Comparações
- 10
- Alfa ajustado
- 0,005
Quando você executa vários testes de hipótese sobre a mesma família de perguntas, a chance de pelo menos um falso positivo cresce a cada comparação extra. A correção de Bonferroni é a resposta clássica e conservadora a esse problema: divida o nível de significância familiar original, alfa, pelo número de comparações m, de modo que cada teste individual seja julgado contra o limiar mais rígido alfa sobre m. Esta calculadora de correção de Bonferroni recebe esses dois números e devolve o nível de significância ajustado que você deve usar como corte por teste.
O que é a correção de Bonferroni e o que a resposta contém
A taxa de erro familiar é a probabilidade de cometer pelo menos um erro do tipo I em um conjunto planejado de testes. Se cada comparação for julgada no alfa sem ajuste, essa chance familiar cresce aproximadamente como um menos um menos alfa elevado a m, de modo que dez testes independentes a cinco por cento já dão mais de quarenta por cento de chance de uma estrela espúria.
A desigualdade de Carlo Emilio Bonferroni oferece um limite simples que não exige independência: mantenha a taxa familiar não maior que alfa avaliando cada comparação em alfa dividido por m. Essa única divisão é todo o núcleo matemático desta calculadora.
Você envia um nível de significância original finito no intervalo aberto-fechado de logo acima de zero até um, mais uma contagem inteira positiva de comparações, e o motor devolve o alfa ajustado junto com as entradas limpas, o nome do método Bonferroni e a string de fórmula alpha-adj igual a alfa sobre m. Checagens clássicas de livro incluem cinco por cento sobre dez comparações, que produz um limiar ajustado de meio por cento, e um por cento sobre cinco comparações, que produz dois décimos de um por cento.
Uma única comparação é um sucesso válido: o alfa ajustado coincide com o original, porque não há o que partir. O procedimento é conservador de propósito. Ele não estima dependência entre testes, não ordena valores p no estilo Holm–Bonferroni e não é um pós-hoc de amplitude estudentizada como Tukey HSD.
Essas são intenções de busca e landings distintas. Aqui você obtém o limiar que escreve ao lado de uma família planejada de testes quando a tarefa, o protocolo ou o revisor pediram de forma específica um nível de significância ajustado por Bonferroni.
Onde o alfa ajustado de Bonferroni aparece no trabalho real
Protocolos clínicos e de laboratório ainda escrevem Bonferroni no plano de análise quando uma família pequena de desfechos primários precisa compartilhar uma taxa familiar de cinco por cento, e o limiar ajustado pertence ao lado de cada desfecho em vez de ser recalculado à mão em cada rascunho. Equipes de analítica de produto que rodam vários contrastes pareados contra um controle podem converter o tamanho de família planejado em um corte por teste antes de olhar os valores p, que é a ordem honesta das operações.
Cadernos de genômica e triagem que aplicam milhares de testes independentes ainda ensinam Bonferroni como a linha de base conservadora mesmo quando depois passam ao controle da taxa de descobertas falsas; um auxiliar determinístico de α sobre m mantém essa linha fixa. Mantenha os pedidos dentro dos limites documentados, fixe o alfa ajustado arredondado nos testes e você obtém limiares Bonferroni reproduzíveis para lições, plugins LMS e workers na borda sem montar uma biblioteca estatística própria.
Se mais tarde você precisar do passo descendente de Holm, Šidák, Tukey HSD ou o FDR de Benjamini–Hochberg, trate-os como intenções de busca e landings distintas em vez de sobrecarregar esta página de correção de Bonferroni.
Casos de uso
Exercícios escolares de comparações múltiplas
Peça que a turma envie um alfa familiar e um número planejado de testes, e verifique que o corte de Bonferroni é igual a alfa dividido por m, inclusive no caso de uma única comparação.
Limiares de protocolo e plano de análise
Transforme um tamanho de família pré-especificado no nível de significância por desfecho que cabe na redação de um experimento clínico, de laboratório ou de produto.
Perguntas frequentes
O que acontece se o número de comparações não for um inteiro positivo?
Zero, negativos, frações e texto não numérico não são contagens de comparações e não são cobrados.
Alfa 0.05 sobre 10 comparações é um exemplo válido?
Uma única comparação devolve o alfa original sem alteração.
Isso é o mesmo que Tukey HSD ou Holm–Bonferroni?
Não. Esta landing só divide alfa por m. Tukey HSD é um pós-hoc de amplitude estudentizada sobre médias de grupo; Holm ordena os valores p. São ferramentas distintas.
Quanto custa esta correção?
A ferramenta do navegador é gratuita e roda localmente.
Por que é preciso corrigir quando se fazem vários testes?
Porque cada teste a mais aumenta a chance de pelo menos um falso positivo. Com dez testes independentes a cinco por cento, essa chance já passa de quarenta por cento; dividir o nível pelo número de testes a mantém abaixo do nível original.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/stat/bonferroni-correction \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"alpha":0.05,"comparisons":10}'const res = await fetch("https://api.kit.forhosting.com/stat/bonferroni-correction", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"alpha": 0.05,
"comparisons": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/bonferroni-correction",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"alpha": 0.05,
"comparisons": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/bonferroni-correction", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"alpha":0.05,"comparisons":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"alpha":0.05,"comparisons":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/bonferroni-correction", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"alpha": 0.05,
"comparisons": 10
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.bonferroni_correction",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
min_comparisons | 1 |
max_comparisons | 1000000000 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
O número de comparações precisa ser um inteiro positivo; frações, zero, negativos e texto não numérico são rejeitados com invalid_input em vez de um arredondamento silencioso ou uma contagem inventada. Chamadas API bem-sucedidas são cobradas a US$ 0,002; entrada inválida não é cobrada.
Contrato de entrada, aliases e comportamento de erro
Forneça exatamente um desses nomes para que um cliente não envie por acidente dois números em conflito. Depois da análise, o motor exige um valor estritamente maior que zero e no máximo um. Essa checagem é intencional: um percentual cru como cinco em vez de zero vírgula zero cinco é um erro comum de planilha, e recortá-lo esconderia uma falha de escala a montante. Comparisons precisa ser um inteiro positivo. Zero, negativos, frações como dois vírgula cinco, notação científica que não é inteiro e valores acima do teto publicado de um bilhão falham com uma mensagem que nomeia o campo e declara que um inteiro positivo é exigido. Esse é o contrato que a capacidade anuncia: uma contagem de comparações não inteira não é arredondada para baixo em silêncio. Envie por POST um corpo JSON com dois campos obrigatórios. O primeiro é alpha, o nível de significância familiar original; os aliases de sala e formulário significance, significance_level e alpha_level são aceitos para que planilhas e widgets digitados reutilizem o mesmo contrato. O alfa pode chegar como número JSON ou como string numérica; strings vazias, campos ausentes, texto não numérico, NaN e Infinity falham com invalid_input nomeando o campo. O segundo campo é comparisons, o número de testes simultâneos m, com aliases m, n_comparisons, num_comparisons e k. Em caso de sucesso o corpo ecoa o alfa limpo e a contagem inteira de comparações, devolve adjusted_alpha como alfa dividido por m em uma precisão de exibição estável, e inclui method e formula para widgets didáticos e painéis laterais de documentação. O preço das chamadas API bem-sucedidas é a base publicada de US$ 0,002 por item; falhas de validação não consomem saldo pré-pago e devolvem o mesmo código invalid_input que o restante do catálogo KIT usa para erros do cliente.
Onde o alfa ajustado de Bonferroni aparece no trabalho real
As unidades de estatística do ensino médio e da faculdade atribuem o tempo todo exercícios de comparações múltiplas, redações de contrastes planejados e problemas de «ajuste o alfa para m testes»; um oráculo confiável que devolve JSON limpo acelera a correção, a montagem de demos e o desenho de aulas interativas. Autores de currículo que constroem widgets de navegador querem a mesma forma JSON grátis na página e paga pela API, para alinhar folhas offline e corretores online. Como esta capacidade é um motor parse puro, cada chamada bem-sucedida custa o preço-base publicado US$ 0,002 sem tokens de modelo e sem rede de saída, e a validação falha não consome saldo.
Casos de integração
Fixtures de correção e checagens de pipeline
Gere alfas ajustados esperados e determinísticos para testes unitários, corretores LMS e cadernos em lote que devem rejeitar uma contagem de comparações não inteira.
Perguntas técnicas
Qual é o nível de significância ajustado por Bonferroni?
α_adj = α / m. Envie o alfa familiar original e um inteiro positivo de comparações; a API devolve o limiar por teste adjusted_alpha.