FirebirdSQL logo

Exemples REGR_INTERCEPT

Example 1. Prévision des volumes de vente
WITH RECURSIVE years(byyear) AS (
  SELECT 1991 FROM rdb$database UNION ALL
  SELECT byyear+1 FROM years WHERE byyear < 2020
),
s AS (
  SELECT EXTRACT(YEAR FROM order_date) AS byyear,
         SUM(total_value) AS total_value
  FROM sales GROUP BY 1
),
regr AS (
  SELECT REGR_INTERCEPT(total_value, byyear) as intercept,
         REGR_SLOPE(total_value, byyear) as slope
FROM s)
SELECT years.byyear AS byyear,
       intercept + (slope * years.byyear) AS total_value
FROM years CROSS JOIN regr
BYYEAR     TOTAL_VALUE
----------------------------
 1991        118377,35
 1992        414557,62
 1993        710737,89
 1994       1006918,16
 1995       1303098,43
 1996       1599278,69
 1997       1895458,96
 1998       2191639,23
 1999       2487819,50
 2000       2783999,77
...

REGR_R2()

Disponible en

DSQL

Syntaxe
REGR_R2(<y>, <x>)
Table 1. paramètres de fonction REGR_R2
Paramètre Description

y

Variable dépendante de la ligne de régression. Peut contenir une colonne de table, une constante, une variable, une expression, une fonction non agrégée ou une UDR qui renvoie un type de données numériques. Les fonctions agrégées ne sont pas autorisées comme expression.

x

Une variable de ligne de régression indépendante. Peut contenir une colonne de table, une constante, une variable, une expression, une fonction non agrégée ou une UDR qui renvoie un type de données numériques. Les fonctions agrégées ne sont pas autorisées comme expression.

type de résultat de retour

DOUBLE PRECISION

La fonction REGR_R2 calcule le coefficient de détermination, ou R-carré, de la ligne de régression.

La fonction REGR_R2(<y>, <x>) est équivalente à

POWER(CORR(<y>, <x>), 2)

docnext count = 4

REGR_SLOPE()

Disponible en

DSQL

Syntaxe
REGR_SLOPE(<y>, <x>)
Table 1. paramètres de fonction REGR_SLOPE
Paramètre Description

y

Variable dépendante de la ligne de régression. Peut contenir une colonne de table, une constante, une variable, une expression, une fonction non agrégée ou une UDR qui renvoie un type de données numériques. Les fonctions agrégées ne sont pas autorisées comme expression.

x

Une variable de ligne de régression indépendante. Peut contenir une colonne de table, une constante, une variable, une expression, une fonction non agrégée ou une UDR qui renvoie un type de données numériques. Les fonctions agrégées ne sont pas autorisées comme expression.

type de résultat de retour

DOUBLE PRECISION

La fonction REGR_SLOPE calcule la pente de la ligne de régression.

La fonction REGR_SLOPE(<y>, <x>) est équivalente à

COVAR_POP(<y>, <x>) / VAR_POP(<exprX>)

<exprX> :==
  CASE WHEN <x> IS NOT NULL AND <y> IS NOT NULL THEN <x> END

REGR_SXX()

Disponible en

DSQL

Syntaxe
REGR_SXX(<y>, <x>)
Table 1. paramètres de fonction REGR_SXX
Paramètre Description

y

Variable dépendante de la ligne de régression. Peut contenir une colonne de table, une constante, une variable, une expression, une fonction non agrégée ou une UDR qui renvoie un type de données numériques. Les fonctions agrégées ne sont pas autorisées comme expression.

x

Une variable de ligne de régression indépendante. Peut contenir une colonne de table, une constante, une variable, une expression, une fonction non agrégée ou une UDR qui renvoie un type de données numériques. Les fonctions agrégées ne sont pas autorisées comme expression.

type de résultat de retour

DOUBLE PRECISION

Statistique de diagnostic utilisée pour l’analyse de régression.

La fonction REGR_SXX(<y>, <x>) est calculée comme suit :

REGR_COUNT(<y>, <x>) * VAR_POP(<exprX>)

<exprX> :==
  CASE WHEN <x> IS NOT NULL AND <y> IS NOT NULL THEN <x> END

REGR_SXY()

Disponible en

DSQL

Syntaxe
REGR_SXY(<y>, <x>)
Table 1. paramètres de fonction REGR_SXY
Paramètre Description

y

Variable dépendante de la ligne de régression. Peut contenir une colonne de table, une constante, une variable, une expression, une fonction non agrégée ou une UDR qui renvoie un type de données numériques. Les fonctions agrégées ne sont pas autorisées comme expression.

x

Une variable de ligne de régression indépendante. Peut contenir une colonne de table, une constante, une variable, une expression, une fonction non agrégée ou une UDR qui renvoie un type de données numériques. Les fonctions agrégées ne sont pas autorisées comme expression.

type de résultat de retour

DOUBLE PRECISION

Statistique de diagnostic utilisée pour l’analyse de régression.

La fonction REGR_SXY(<y>, <x>) est calculée comme suit :

REGR_COUNT(<y>, <x>) * COVAR_POP(<y>, <x>)

REGR_SYY()

Disponible en

DSQL

Syntaxe
REGR_SYY(<y>, <x>)
Table 1. paramètres de fonction REGR_SYY
Paramètre Description

y

Variable dépendante de la ligne de régression. Peut contenir une colonne de table, une constante, une variable, une expression, une fonction non agrégée ou une UDR qui renvoie un type de données numériques. Les fonctions agrégées ne sont pas autorisées comme expression.

x

Une variable de ligne de régression indépendante. Peut contenir une colonne de table, une constante, une variable, une expression, une fonction non agrégée ou une UDR qui renvoie un type de données numériques. Les fonctions agrégées ne sont pas autorisées comme expression.

type de résultat de retour

DOUBLE PRECISION

La statistique de diagnostic utilisée pour l’analyse de régression.

La fonction REGR_SYY(<y>, <x>) est calculée comme suit :

REGR_COUNT(<y>, <x>) * VAR_POP(<exprY>)

<exprY> :==
  CASE WHEN <x> IS NOT NULL AND <y> IS NOT NULL THEN <y> END