Kategorien:

Aggregatfunktionen (Linear Regression) , Syntax und Verwendung von Fensterfunktionen

REGR_R2

Gibt das Bestimmtheitsmaß für Nicht-Null-Paare in einer Gruppe zurück. Der Wert wird für Nicht-Null-Paare mit folgender Formel berechnet:

NULL                 if VAR_POP(x) = 0, else
1                    if VAR_POP(y) = 0 and VAR_POP(x) <> 0, else
POWER(CORR(y,x), 2)
Copy

Dabei ist x die unabhängige Variable und y die abhängige Variable.

Syntax

Aggregatfunktion

REGR_R2(y, x)
Copy

Fensterfunktionen

REGR_R2(y, x) OVER ( [ PARTITION BY <expr3> ] )
Copy

Argumente

y

Die abhängige Variable. Dies muss ein Ausdruck sein, der zu einem numerischen Typ ausgewertet werden kann.

x

Die unabhängige Variable. Dies muss ein Ausdruck sein, der zu einem numerischen Typ ausgewertet werden kann.

expr3

Dies ist der optionale Ausdruck zum Gruppieren von Zeilen in Partitionen.

Wichtig

Beachten Sie die Reihenfolge der Argumente. Die abhängige Variable ist die erste.

Nutzungshinweise

  • DISTINCT wird bei dieser Funktion nicht unterstützt.

  • Wenn diese Funktion als Fensterfunktion aufgerufen wird, wird sie nicht unterstützt:

    • Eine ORDER BY-Klausel innerhalb der OVER-Klausel.

    • Explizite Fensterrahmen.

Beispiele

CREATE OR REPLACE TABLE aggr(k INT, v DECIMAL(10,2), v2 DECIMAL(10, 2));
INSERT INTO aggr VALUES(1, 10, null);
INSERT INTO aggr VALUES(2, 10, 11), (2, 20, 22), (2, 25, null), (2, 30, 35);
Copy
SELECT k, REGR_R2(v, v2) FROM aggr GROUP BY k;
Copy
+---+----------------+
| k | regr_r2(v, v2) |
|---+----------------+
| 1 | [NULL]         |
| 2 | 0.9976905312   |
+---+----------------+