Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
$ CovariancePop
Neu ab Version 8.0.2.
Der $covariancePop Operator in Amazon DocumentDB gibt die Populationskovarianz zweier numerischer Ausdrücke zurück. Es handelt sich um einen Fensteroperator, der nur in der $setWindowFields Phase verwendet wird. In den $group Stufen oder ist er nicht gültig. $bucket Sie geben den Operator unter dem output Feld der Bühne an und definieren optional die Fenstergrenzen mit einem window Dokument.
Parameter
-
$covariancePopverwendet ein Array mit zwei Elementen[ <expression1>, <expression2> ], wobei jedes Element ein numerischer Ausdruck ist (ein Feldpfad"$x", z. B. ein Ausdruck oder eine Konstante). Es gibt die Populationskovarianz der beiden Ausdrücke in den Dokumenten im Fenster zurück.
Beispiel (MongoDB Shell)
Das folgende Beispiel partitioniert die Dokumente nachseries, sortiert jede Partition nach t und berechnet die Populationskovarianz von x und y über die gesamte Partition.
Erstellen Sie Beispieldokumente
db.measurements.insertMany([ { _id: 1, series: "A", t: 1, x: 1, y: 2 }, { _id: 2, series: "A", t: 2, x: 2, y: 5 }, { _id: 3, series: "A", t: 3, x: 3, y: 8 }, { _id: 4, series: "B", t: 1, x: 1, y: 8 }, { _id: 5, series: "B", t: 2, x: 2, y: 5 }, { _id: 6, series: "B", t: 3, x: 3, y: 2 } ]);
Beispiel für eine Abfrage
db.measurements.aggregate([ { $setWindowFields: { partitionBy: "$series", sortBy: { t: 1 }, output: { covariance: { $covariancePop: [ "$x", "$y" ], window: { documents: ["unbounded", "unbounded"] } } } } } ]);
Ausgabe
[
{ "_id": 1, "series": "A", "t": 1, "x": 1, "y": 2, "covariance": 2 },
{ "_id": 2, "series": "A", "t": 2, "x": 2, "y": 5, "covariance": 2 },
{ "_id": 3, "series": "A", "t": 3, "x": 3, "y": 8, "covariance": 2 },
{ "_id": 4, "series": "B", "t": 1, "x": 1, "y": 8, "covariance": -2 },
{ "_id": 5, "series": "B", "t": 2, "x": 2, "y": 5, "covariance": -2 },
{ "_id": 6, "series": "B", "t": 3, "x": 3, "y": 2, "covariance": -2 }
]
Jedes Dokument in einer Partition erhält dieselbe covariance Kovarianz der Grundgesamtheit aller Dokumente in dieser Partition x und y für alle Dokumente in dieser Partition: 2 für Reihen A (X und Y nehmen zusammen zu) und -2 für Reihen B (y nimmt ab, wenn X zunimmt).
Codebeispiele
Um ein Codebeispiel für die Verwendung des $covariancePop Operators in der $setWindowFields Phase anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten: