Python/Pandas 值和差异的时间序列相关性

Python/Pandas time series correlation on values vs differences

我熟悉 Pandas Series corr 函数来计算两个 Series 之间的相关性,例如:

import pandas as pd
import numpy as np

A = pd.Series(np.random.randint(1,101,50))
B = pd.Series(np.random.randint(1,101,50))

A.corr(B)

这将计算两个系列的值之间的相关性,但如果我正在处理时间序列,我可能想计算变化的相关性(绝对变化或百分比变化以及超过 1d、1w、 1m等)。

一些统计软件可以很容易地做到这一点,当然我可以创建一个包含每日、每周变化的系列,然后 运行 相同的功能,但我想知道是否有更 Pythonic 的如何做到这一点?

我想通过 pandas 更像 pythonic 的方法是使用 df.pct_change():

假设A和B是时间序列:

A.pct_change().corr(B.pct_change())