Перейти к содержимому
Последнее обновление

REGR_SLOPE

Описание​

Возвращает угловой коэффициент прямой линейной регрессии, вычисленный по парам (y, x), не содержащим NULL, в группе, где x — независимая переменная, а y — зависимая переменная. Результат эквивалентен COVAR_POP(y, x) / VAR_POP(x).

Синтаксис​

REGR_SLOPE(<y>, <x>)

Параметры​

ПараметрОписание
<y>Зависимая переменная. Поддерживаемый тип: Double.
<x>Независимая переменная. Поддерживаемый тип: Double.

Возвращаемое значение​

Возвращает значение типа Double, представляющее угловой коэффициент прямой линейной регрессии. Если в группе нет строк или во всех строках выражения принимают значения NULL, функция возвращает NULL.

Пример​

CREATE TABLE test_regr (
`id` int,
`x` double,
`y` double
) DUPLICATE KEY (`id`)
DISTRIBUTED BY HASH(`id`) BUCKETS AUTO
PROPERTIES (
"replication_allocation" = "tag.location.default: 1"
);

INSERT INTO test_regr VALUES
(1, 0, NULL),
(2, 1, 3),
(2, 2, 5),
(2, 3, 7),
(2, 4, 9),
(2, 5, NULL);
SELECT id, REGR_SLOPE(y, x) FROM test_regr GROUP BY id ORDER BY id;
+------+--------------------+
| id | REGR_SLOPE(y, x) |
+------+--------------------+
| 1 | NULL |
| 2 | 2.0 |
+------+--------------------+