Kategorien:

Aggregatfunktionen (Allgemein)

SKEW

Gibt die Stichprobenschiefe von Nicht-NULL-Datensätzen zurück. Wenn alle Datensätze in einer Gruppe NULL sind, gibt die Funktion NULL zurück.

Die folgende Formel wird verwendet, um die Stichprobenschiefe zu berechnen:

\[(n^2)/((n-1) * (n-2)) * (m_3/(k_2)^(1,5))\]

Wobei:

  • \(n\) gibt die Anzahl der Nicht-Null-Datensätze an.

  • \(m_3\) bezeichnet das dritte zentrale Moment der Stichprobe.

  • \(k_2\) bezeichnet den symmetrischen, unverzerrten Schätzer der Varianz.

Intuitiv beschreibt die Schiefe, wie asymmetrisch die zugrunde liegende Verteilung ist.

Syntax

SKEW( <expr> )
Copy

Argumente

expr

Dies ist ein Ausdruck, der einen numerischen Datentyp ergibt (INTEGER, FLOAT, DECIMAL usw.).

Rückgabewerte

Gibt einen Wert vom Typ DOUBLE zurück.

Nutzungshinweise

  • Bei Eingaben mit weniger als drei Datensätzen gibt SKEW den Wert NULL zurück.

Beispiele

Erstellen Sie einer Tabelle und Laden der Daten:

create or replace table aggr(k int, v decimal(10,2), v2 decimal(10, 2));

insert into aggr values
    (1, 10, null),
    (2, 10, null),
    (2, 20, 22),
    (2, 25, null),
    (2, 30, 35);
Copy

Zeigen Sie die Daten an:

select * 
    from aggr
    order by k, v;
+---+-------+-------+
| K |     V |    V2 |
|---+-------+-------|
| 1 | 10.00 |  NULL |
| 2 | 10.00 |  NULL |
| 2 | 20.00 | 22.00 |
| 2 | 25.00 |  NULL |
| 2 | 30.00 | 35.00 |
+---+-------+-------+
Copy

Fragen Sie die Daten ab:

select SKEW(K), SKEW(V), SKEW(V2) 
    from aggr;
+--------------+---------------+----------+
|      SKEW(K) |       SKEW(V) | SKEW(V2) |
|--------------+---------------+----------|
| -2.236069766 | 0.05240788515 |     NULL |
+--------------+---------------+----------+
Copy