Как построить корреляцию Пирсона с учетом временного ряда?
Я использую код на этом сайте http://blog.chrislowis.co.uk/2008/11/24/ruby-gsl-pearson.html для реализации корреляции Пирсона, учитывая данные двух временных рядов, например, так:
require 'gsl'
pearson_correlation = GSL::Stats::correlation(
GSL::Vector.alloc(first_metrics),GSL::Vector.alloc(second_metrics)
)
Это возвращает число, такое как -0.2352461593569471.
В настоящее время я использую библиотеку highcharts и предоставляю ей два набора данных временных рядов. Учитывая, что у меня есть конечный временной ряд для обоих наборов, могу ли я что-то сделать с этим числом (-0,2352461593569471), чтобы создать третий временной ряд, показывающий наклон этой кривой? Если кто-то может указать мне правильное направление, я действительно ценю это!
1 ответ
Нет, корреляция ничего не говорит о наклоне линии наилучшего соответствия. Это просто говорит вам, приблизительно, насколько изменчивость одной переменной (или одного временного ряда, в данном случае) может быть объяснена другой. Здесь достаточно хорошее описание: http://www.graphpad.com/support/faqid/1141/.
То, как вы поступите с данными в вашем конкретном случае, сильно зависит от того, чего вы пытаетесь достичь. Вы пытаетесь показать, что переменная X вызывает переменную Y? Если это так, вы можете начать с отбрасывания временных рядов, просто обработать данные как парные значения и использовать линейную регрессию. Если вы пытаетесь найти модель того, как X и Y изменяются вместе со временем, вы можете взглянуть на многомерную линейную регрессию (хотя я не очень знаком с этим).