Categorias:

Funções de agregação (General) , Sintaxe e uso da função de janela

KURTOSIS

Retorna a amostra de curtose em excesso de registros não NULL. Se todos os registros dentro de um grupo forem NULL, a função retorna NULL.

A seguinte fórmula é usada para calcular o excesso de curtose da amostra:

\[(n * (n+1))/((n-1) * (n-2) * (n-3)) * (n * m_4/(k_2)^2) - 3 * (n-1)^2 / ((n-2) * (n-3))\]

onde:

  • \(n\) denota o número de registros diferentes de NULL.

  • \(m_4\) denota o quarto momento central da amostra.

  • \(k_2\) denota o estimador simétrico imparcial da variância.

Sintaxe

Função de agregação

KURTOSIS( <expr> )
Copy

Função de janela

KURTOSIS( <expr> ) OVER ( [ PARTITION BY <expr2> ] )
Copy

Argumentos

expr

Esta é uma expressão que é avaliada como um tipo de dados numérico (INTEGER, FLOAT, DECIMAL).

expr2

Uma expressão que define os grupos ou janelas individuais.

Retornos

Retorna DOUBLE se o tipo de dados de entrada for DOUBLE/FLOAT.

Retorna DECIMAL se o tipo de dados de entrada for outro tipo de dados numéricos.

Notas de uso

  • Para entradas com menos de quatro registros, KURTOSIS retorna NULL.

  • Quando esta função é chamada como uma função de janela, ela não oferece suporte para:

    • Uma cláusula ORDER BY dentro da cláusula OVER.

    • Quadros de janela explícitos.

Exemplos

Crie uma tabela e insira algumas linhas:

CREATE OR REPLACE TABLE aggr(k INT, v DECIMAL(10,2), v2 DECIMAL(10, 2));

INSERT INTO aggr VALUES
  (1, 10, null),
  (2, 10, 12),
  (2, 20, 22),
  (2, 25, null),
  (2, 30, 35);
Copy

Selecione todos os dados da tabela:

SELECT * FROM aggr
  ORDER BY k, v;
Copy
+---+-------+-------+
| K |     V |    V2 |
|---+-------+-------|
| 1 | 10.00 |  NULL |
| 2 | 10.00 | 12.00 |
| 2 | 20.00 | 22.00 |
| 2 | 25.00 |  NULL |
| 2 | 30.00 | 35.00 |
+---+-------+-------+

Retorne o valor de KURTOSIS para cada coluna:

SELECT KURTOSIS(k), KURTOSIS(v), KURTOSIS(v2)
  FROM aggr;
Copy
+----------------+-----------------+--------------+
|    KURTOSIS(K) |     KURTOSIS(V) | KURTOSIS(V2) |
|----------------+-----------------+--------------|
| 5.000000000000 | -2.324218750000 |         NULL |
+----------------+-----------------+--------------+