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

Python 确定多个时间序列之间时间协方差的方法?,python,r,matlab,time-series,covariance,Python,R,Matlab,Time Series,Covariance,我们正试图量化数百个地点之间水化学变化的同步性。对于每个站点,我们都有一个浓度的时间序列 我们想量化站点之间的总体时间协方差(浓度同时上升和下降),并对不同的统计方法感兴趣 不同的化学参数具有非常不同的绝对浓度(例如,碳为1-100 ppm,磷为0.001-1 ppm),因此需要相对测量。使用两两比例协方差的平均值,但肯定有一种更优雅的方法 我们很乐意使用R、Pyton或Matlab。谢谢 我不是水文学家或统计学家;您可能想重新发布 我期待着看到这个社区还想带来什么 当你说两两比例协方差的平均值

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

我们想量化站点之间的总体时间协方差(浓度同时上升和下降),并对不同的统计方法感兴趣

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


我们很乐意使用R、Pyton或Matlab。谢谢

我不是水文学家或统计学家;您可能想重新发布

我期待着看到这个社区还想带来什么

当你说两两比例协方差的平均值时,我假设你是 得到一个结果矩阵,其中每个元素是 碳和磷的便利

通过将范围转换为距离矩阵,该矩阵可用于聚类。例如,您可以取碳和磷协方差的平均值
|-(1-x)|
,使反相关样本(-1)接近2的距离,其中高度相关样本(1)将接近0。你也可以取协方差向量之间的欧几里德距离

我有一个脚本,它将生成指定数量的 使用光谱聚类、凝聚聚类或Kmeans聚类对熊猫进行聚类 并学习python

另外,R的
hclust
方法(ward Hierarchy clustering)产生了很好的结果,jmp有一个很好的交互式分层集群视图,您可以通过单击按钮旋转节点

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


为了解决计时问题,我将对时间序列中的同步子集(复数)执行比较窗口分析。例如,如果您的两个站点有一年的重叠数据,每天有3次样本,您可以从1月(1-7)、1月(2-7)的每一天开始计算每周的相关性等。适合您的分布所有协方差时间序列中的所有元素集为给定周的协方差提供p值,以确定碳和磷水平何时显著协变。

您可能希望将Gist中的相关代码包含在帖子中-只需粘贴、选择,然后按Ctrl+K组合键进行格式化。