Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

$stdDevPop (operador de acumulación)

$stdDevPop

Calcula la desviación estándar poblacional de los valores en un grupo de documentos. Utilice $stdDevPop si los valores abarcan toda la población de datos que desea representar y no desea generalizar.

Si los valores representan solo una muestra de la población, utilice $stdDevSamp en su lugar.

El acumulador $stdDevPop está disponible en estas etapas:

Nota

Desambiguación

Esta página describe $stdDevPop cuando se utiliza como acumulador. Los acumuladores devuelven un valor agregado a partir de un grupo de documentos de entrada.

También puedes usar $stdDevPop en estos otros contextos:

{ $stdDevPop: <expression> }

Para obtener más información sobre las expresiones, consulta Expresiones.

$stdDevPop devuelve la desviación estándar de la población de los valores de entrada como un double.

$stdDevPop Ignora los valores no numéricos, incluidos los valores faltantes. Si todos los valores de entrada no son numéricos, $stdDevPop devuelve null.

Si la entrada consiste en un único valor numérico, $stdDevPop devuelve 0.

Los ejemplos de esta página utilizan datos del conjunto de datos sample_mflix. Para obtener más información sobre cómo cargar este conjunto de datos en su implementación autogestionada de MongoDB, consulte Cargar el conjunto de datos de ejemplo. Si realizó alguna modificación en las bases de datos de ejemplo, es posible que deba eliminarlas y volver a crearlas para ejecutar los ejemplos de esta página.

El siguiente ejemplo agrupa las películas por director y devuelve los cinco directores con las calificaciones de IMDb más variadas, entre los directores con al menos 10 películas.

db.movies.aggregate( [
{
$match: {
directors: { $exists: true },
"imdb.rating": { $type: "double" }
}
},
{
$unwind: "$directors"
},
{
$group: {
_id: "$directors",
movieCount: { $sum: 1 },
stdDevRating: { $stdDevPop: "$imdb.rating" }
}
},
{
$match: { movieCount: { $gte: 10 } }
},
{
$sort: { stdDevRating: -1 }
},
{
$limit: 5
}
] )

La tubería precedente:

  • Utiliza $match para filtrar las películas que tienen un campo directors y una calificación numérica de IMDb.

  • Utiliza $unwind para crear un documento por director y por película, de modo que cada par director-película se agrupe por separado.

  • Utiliza $group para agrupar por director, contar películas y calcular stdDevRating usando $stdDevPop en imdb.rating.

  • Utiliza $match para mantener solo a los directores con al menos 10 películas.

  • Utiliza $sort para devolver los resultados en orden descendente según stdDevRating.

  • Utiliza $limit para devolver los mejores resultados de 5.