Gtld corr

Материал из GTL-wiki
Версия от 00:52, 24 февраля 2025; AlekseyCube (обсуждение | вклад) (→‎Содержание функции)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

Краткое описание

Функция предназначена для расчета коэффициента корреляции дискретных сигналов (массивов). В качестве аргументов на вход подаются массивы данных. В результате возвращается расчетное значение коэффициента корреляции.

Синтаксис

Стандартная конструкция выглядит таким образом:

var __corr = getCorr( массив 1, массив 2 );

Содержание функции

function getCorr(arr1, arr2) {
    let X = 0; //аргумент 1
    let Y = 0; //аргумент 2
    let Z = 0; //аргумент 3
    let __avg1 = arr1.reduce((acc, item) => (acc + item)) / arr1.length; //среднее значение массива 1
    let __avg2 = arr2.reduce((acc, item) => (acc + item)) / arr2.length; //среднее значение массива 2

    for (let i = 0; i < arr1.length; i++) {
        X += (arr1[i] - __avg1) * (arr1[i] - __avg2);
        Y += (arr1[i] - __avg1) ** 2;
        Z += (arr2[i] - __avg2) ** 2;
    };

    return X / (Math.sqrt(Y) * Math.sqrt(Z));
}; //рассчет корреляции