$stdDevPop (Acumulador de Desvio Padrão Populacional)
Última atualização: 2026-10-09
$stdDevPop (Acumulador de Desvio Padrão Populacional)
$stdDevPop é um acumulador que calcula o desvio padrão populacional de um campo em um grupo, dividindo por N em vez de N-1. Use-o quando os dados representam a população inteira, por exemplo as notas de uma escola inteira. Valores não numéricos são ignorados. A única diferença para $stdDevSamp é o denominador.
| Categoria | Acumuladores |
|---|---|
| Versão do MongoDB | 3.2+ |
| Idioma do Exemplo | mongosh (Shell) |
📝 Sintaxe
{ $group: { _id: <key>, dev: { $stdDevPop: "$field" } } }
Retorno:Desvio padrão populacional (valores não numéricos ignorados)
▶ Exemplo
Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):
// $stdDevPop: desvio padrão populacional das notas por turma
db.scores.aggregate([
{ $group: { _id: '$class', dev: { $stdDevPop: '$score' } } }
])
Saída:
{ "_id": "A", "dev": 12.34 }
📌 Notas
- O desvio padrão populacional divide por N; o amostral, por N-1
- Valores null e não numéricos são ignorados
- Retorna null quando um grupo não tem valores numéricos
🏷️ Tags Relacionados
💡 Casos Relacionados
Mais casos práticos em breve.
📚 Tutoriais Relacionados
❓ Perguntas Frequentes
QQual é a diferença entre $stdDevPop e $stdDevSamp?
A$stdDevPop trata os dados como a população inteira (N); $stdDevSamp trata como amostra (N-1).
QQuando devo usar $stdDevPop?
AQuando os dados cobrem a população inteira, como as notas de uma escola inteira em vez de uma amostra.
QE se um grupo tiver apenas valores não numéricos?
AEle retorna null.