确定许多时间序列之间的时间协方差的方法?

时间:2018-05-02 16:55:53

标签: python r matlab time-series covariance

我们正试图量化几百个地点之间水化学变化的同步性。对于每个站点,我们都有一个时间序列的集中。

我们希望量化各站点之间的整体时间协方差(同时上下波动的浓度),并对不同的统计方法感兴趣。

不同的化学参数具有非常不同的绝对浓度(例如,碳为1-100ppm,磷为0.001至1ppm),因此需要相对度量。 We have done this previously具有成对比例协方差的均值,但肯定有一种更优雅的方法。

我们很高兴使用R,Pyton或Matlab。谢谢!

1 个答案:

答案 0 :(得分:-1)

我不是水文学家或统计学家;您可能希望重新发布Cross Validated

我期待看到这个社区想要带来什么。

当你说成对缩放的共同方差的意思时我假设你是 获得结果矩阵,其中每个元素是平均值 碳和磷的便利性。

通过将范围转换为距离矩阵[-1,1] -> [+n,0],可以将此矩阵用于聚类。例如,您可以采用碳和磷协方差|-(1-x)|的平均值,以便反相关样本(-1)接近2的距离,其中高度相关的样本(1)将接近0.您还可以采用欧几里德共方差矢量之间的距离。

我有一个脚本here on GitHub,它会生成指定数量的脚本 在庞大熊猫上使用Spectral,Agglomerative或Kmeans聚类的聚类 并且在python中使用sklearn。

R的hclust方法(病房层次聚类)产生了很好的结果,jmp有一个很好的交互式层次聚类视图,你可以用点击按钮旋转节点。

验证样本在协方差空间和物理空间中聚集在一起可以验证系统中的依赖性,但是时间和同步性如何!?

为了攻击计时,我将对你的时间序列(复数)中的同步子集进行比较窗口分析。例如,如果您的2个站点每年有3次样本重叠数据,那么您可以按周开始计算每周的相关性,从每天jan(1-7),jan(2-7)等开始。分布适合于所有时间序列的共同方差中所有元素的集合为给定周的共方差提供p值,以确定碳和磷水平何时显着共变。