【问题标题】:How to plot a Pearson correlation given a time series?如何在给定时间序列的情况下绘制 Pearson 相关性?
【发布时间】:2012-06-23 02:33:24
【问题描述】:

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

  require 'gsl'

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

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

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

【问题讨论】:

  • 您的数据是什么样的?你想展示什么?

标签: data-visualization time-series gsl pearson


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2021-08-26
    • 1970-01-01
    • 2018-05-02
    • 1970-01-01
    • 2020-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-30
    相关资源
    最近更新 更多