Что делает этот калькулятор
Инструмент строит степенную линию тренда вида \(y = A\cdot x^{B}\) по набору точек, где каждой точке (x, y) может соответствовать частота или вес f. Это регрессия методом наименьших квадратов с весами по частоте, выполняемая в координатах натурального логарифма: такой переход превращает степенную кривую в прямую \(\ln y = \ln A + B\cdot\ln x\). В основе лежит чистая математика и статистика, поэтому метод универсален и не зависит от каких-либо региональных правил.
Как пользоваться
Введите значения x, значения y и частоты в виде трёх списков чисел через запятую одинаковой длины. Все x и y должны быть строго положительными (логарифм не определён для нуля и отрицательных чисел), а каждая частота — не меньше нуля. Выберите число значащих цифр для вывода результата и считайте найденный коэффициент A, показатель степени B и коэффициент корреляции Пирсона r.
Разбор формулы
Для каждой строки обозначим \(X = \ln x\) и \(Y = \ln y\). При суммарном весе \(n = \sum f\) взвешенные средние равны \(\overline{\ln x} = \tfrac{\sum f\cdot\ln x}{n}\) и \(\overline{\ln y} = \tfrac{\sum f\cdot\ln y}{n}\). Взвешенные суммы квадратов:
$$S_{xx} = \textstyle\sum f(\ln x)^2 - n\cdot\overline{\ln x}^{\,2}$$$$S_{yy} = \textstyle\sum f(\ln y)^2 - n\cdot\overline{\ln y}^{\,2}$$$$S_{xy} = \textstyle\sum f(\ln x)(\ln y) - n\cdot\overline{\ln x}\cdot\overline{\ln y}$$Тогда
$$B = \frac{S_{xy}}{S_{xx}}, \quad A = \exp\!\left(\overline{\ln y} - B\cdot\overline{\ln x}\right), \quad r = \frac{S_{xy}}{\sqrt{S_{xx}}\cdot\sqrt{S_{yy}}}$$Фактически каждая точка учитывается так, будто повторяется f раз.
Разбор примера
Возьмём \(x = [1, 2, 3, 4, 5]\) и \(y = [1, 4, 9, 16, 25]\) (то есть в точности \(y = x^2\)) при всех частотах, равных 1. Вычисления дают \(S_{xx} \approx 1.615494\), \(S_{xy} \approx 3.230987\) и \(S_{yy} \approx 6.461972\), поэтому \(B = \tfrac{3.230987}{1.615494} = 2\), \(A = \exp(0) = 1\) и \(r = 1\). Результат \(y = 1\cdot x^2\) — идеальная подгонка, как и ожидалось.
Частые вопросы
Что означает коэффициент корреляции? \(|r|\) близко к 1 — сильная степенная зависимость; 0,4–0,7 — умеренная, 0,2–0,4 — слабая, а ниже 0,2 связи практически нет.
Почему x и y должны быть положительными? При подгонке используются натуральные логарифмы, которые определены только для положительных чисел, поэтому неположительные точки пропускаются.
Что если все значения x одинаковы? Тогда \(S_{xx} = 0\) и показатель степени B определить невозможно, поэтому калькулятор сообщает об ошибке.