Calculadora de média winsorizada
A média winsorizada resume dados numéricos e reduz a influência de observações excepcionalmente pequenas ou grandes.
Executar grátis
Informe um array e uma fração-limite para cada cauda. A calculadora ordena as observações, identifica os limites inferior e superior por posição, substitui os valores que os ultrapassam e calcula a média da amostra ajustada. Ela também retorna os limites, a quantidade em cada cauda e os valores winsorizados, para que o resultado seja transparente e reproduzível.
Escolha uma fração de cauda compatível com sua análise
A fração-limite informa qual parte da amostra será tratada como cada cauda extrema. Uma fração de 0.10 significa que os dez por cento menores e os dez por cento maiores podem ser limitados. Como as observações são discretas, a calculadora multiplica o tamanho da amostra pela fração e usa a parte inteira para obter a quantidade em cada cauda. Com 23 observações e uma fração de 0.10, duas observações são limitadas em cada extremidade. Uma fração igual a zero mantém todos os valores e, portanto, retorna a média aritmética comum. Frações maiores tornam o resumo progressivamente menos sensível aos extremos, mas também descartam mais informações sobre variações reais. Sempre que possível, escolha a fração antes de examinar o resultado pretendido e registre essa decisão junto com a saída. Em trabalhos formais, use a fração definida pelo método, protocolo ou convenção de sua área. Quando não houver uma convenção, compare algumas frações razoáveis e informe se a conclusão substantiva muda, em vez de selecionar o ajuste que produz o número mais conveniente.
Entenda exatamente como a limitação altera a amostra
As observações são ordenadas da menor para a maior. Se a quantidade da cauda for k, o valor na posição ordenada k passa a ser o limite inferior, e o valor situado k posições a partir da extremidade superior passa a ser o limite superior. Toda observação abaixo do limite inferior é substituída por ele, e toda observação acima do limite superior é substituída pelo limite superior. Os valores entre os limites permanecem inalterados. Em seguida, calcula-se a média das observações ajustadas. Isso difere de uma média aparada: o aparo remove observações das caudas e reduz o número de valores usados, enquanto a winsorização mantém o tamanho original da amostra e substitui os extremos pelos valores de fronteira. A resposta mostra o array ordenado e ajustado como winsorized_values, além de lower_limit, upper_limit e tail_count, para que você possa auditar cada substituição. Quando a fração é exatamente a metade, os dois limites por posição se cruzariam em uma amostra par. A calculadora define esse caso-limite como a mediana amostral e limita todas as observações a ela; em uma amostra par, essa mediana é a média dos dois valores centrais.
Interprete o resultado sem ocultar extremos relevantes
A média winsorizada é útil quando as observações extremas são plausíveis demais para que sua exclusão seja fácil de justificar, mas influentes o bastante para distorcer a média comum. Ela não corrige automaticamente dados incorretos. Primeiro investigue erros de unidade, registros duplicados, falhas de sensores, medições impossíveis e erros de digitação; corrija ou exclua erros confirmados com uma regra documentada de limpeza. Aplique a winsorização à amostra analítica restante quando uma estimativa robusta de localização responder à pergunta real. Mantenha sempre em suas anotações a média comum, o tamanho da amostra, a fração e os limites. Uma diferença grande entre as médias comum e winsorizada é uma informação diagnóstica: mostra que as caudas influenciam materialmente o resultado e merece explicação. Lembre-se também de que a winsorização altera a distribuição empírica e pode afetar estimativas de variância, intervalos de confiança e modelos posteriores. Se você precisar de estatística inferencial, use um método cujos erros-padrão considerem explicitamente a winsorização, em vez de tratar os valores ajustados como medições brutas intactas. A calculadora fornece um resumo determinístico, não uma afirmação de que determinada fração seja cientificamente adequada.
Casos de uso
Resumir medições operacionais
Reduza a influência de valores extremos ocasionais de latência, duração ou sensores sem alterar a quantidade original de observações.
Verificar a sensibilidade a valores atípicos
Compare a média comum com a winsorizada para descobrir se poucos valores nas caudas determinam o resultado principal.
Reproduzir uma regra robusta de relatório
Aplique sempre a mesma fração de cauda documentada e guarde os limites e valores ajustados como trilha de auditoria.
Perguntas frequentes
Quanto custa o cálculo?
A calculadora no navegador é gratuita nesta página. As solicitações à API usam o preço-base publicado de US$ 0,002.
A média winsorizada é igual à média aparada?
Não. A média aparada remove observações das duas caudas. A média winsorizada mantém a mesma quantidade, mas substitui os extremos pelos limites retidos mais próximos.
Como é definida a quantidade de observações limitadas?
Para cada cauda, a calculadora usa a parte inteira do tamanho da amostra multiplicado pela fração-limite. O campo tail_count mostra essa quantidade.
O que acontece quando a fração-limite é zero?
Nenhuma observação é limitada; portanto, o resultado corresponde à média aritmética comum.
A fração-limite pode ser igual à metade?
Sim. Quando ela é exatamente a metade, todos os valores são limitados à mediana amostral. Com um número par de observações, a mediana é o ponto médio dos dois valores centrais.
A calculadora aceita valores ausentes ou não numéricos?
Não. O array values precisa conter pelo menos um número finito, e todos os itens devem ser numéricos. Limpe ou impute explicitamente os valores ausentes antes do cálculo.
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/winsorized-mean \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"values":[1,2,3,4,100],"limit_fraction":0.2}'const res = await fetch("https://api.kit.forhosting.com/stat/winsorized-mean", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"values": [
1,
2,
3,
4,
100
],
"limit_fraction": 0.2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/winsorized-mean",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"values": [
1,
2,
3,
4,
100
],
"limit_fraction": 0.2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/winsorized-mean", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"values":[1,2,3,4,100],"limit_fraction":0.2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"values":[1,2,3,4,100],"limit_fraction":0.2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/winsorized-mean", 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
{
"values": [
1,
2,
3,
4,
100
],
"limit_fraction": 0.2
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.winsorized_mean",
"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.
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. |