Definición
$lnCalcula el logaritmo natural ln (es decir, log e) de un número y devuelve el resultado como un valor double.
$lntiene la siguiente sintaxis:{ $ln: <number> } La expresión
<number>puede ser cualquier expresión válida expresión siempre que resuelva a un número no negativo. Para obtener más información sobre las expresiones, consulta Expresiones.$lnes equivalente a la expresión$log: [ <number>, Math.E ], dondeMath.Ees una representación de JavaScript para el número de Euler e.
Comportamiento
El tipo de retorno por defecto es un double. Si al menos un operando es un decimal, entonces el tipo de retorno es un decimal.
Si el argumento se resuelve en un valor de null o se refiere a un campo que falta, $ln devuelve null. Si el argumento se resuelve en NaN, $ln devuelve NaN.
Ejemplo | Resultados |
|---|---|
|
|
|
|
|
|
Ejemplo
Una colección sales contiene los siguientes documentos:
db.sales.insertMany( [ { _id: 1, year: "2000", sales: 8700000 }, { _id: 2, year: "2005", sales: 5000000 }, { _id: 3, year: "2010", sales: 6250000 } ] )
El siguiente ejemplo transforma los datos de sales:
db.sales.aggregate( [ { $project: { x: "$year", y: { $ln: "$sales" } } } ] )
La operación devuelve los siguientes resultados:
{ "_id" : 1, "x" : "2000", "y" : 15.978833583624812 } { "_id" : 2, "x" : "2005", "y" : 15.424948470398375 } { "_id" : 3, "x" : "2010", "y" : 15.648092021712584 }