1

我正在使用本网站http://blog.chrislowis.co.uk/2008/11/24/ruby-gsl-pearson.html中的代码来实现 Pearson Correlation 给定两个时间序列数据,如下所示:

  require 'gsl'

  pearson_correlation = GSL::Stats::correlation(
    GSL::Vector.alloc(first_metrics),GSL::Vector.alloc(second_metrics)
  )    

这将返回一个数字,例如 -0.2352461593569471。

我目前正在使用 highcharts 库并为其提供两组时间序列数据。鉴于我对这两个集合都有一个有限的时间序列,我可以用这个数字(-0.2352461593569471)做一些事情来创建第三个时间序列来显示这条曲线的斜率吗?如果有人能指出我正确的方向,我将不胜感激!

4

1 回答 1

1

不,相关性并没有告诉你任何关于最佳拟合线的斜率的信息。它只是告诉您一个变量(或一个时间序列,在这种情况下)中的可变性有多少可以被另一个解释。这里有一个相当好的描述:http: //www.graphpad.com/support/faqid/1141/

在特定情况下如何处理数据在很大程度上取决于您要实现的目标。您是否试图证明变量 X 导致变量 Y?如果是这样,您可以从删除时间序列开始,将数据视为配对值,并使用线性回归。如果您试图找到 X 和 Y 如何随时间变化的模型,您可以查看多元线性回归(不过我对此不太熟悉)。

于 2012-11-23T02:37:39.140 回答