gpt4 book ai didi

python - 部分日期的 Pandas DataFrame 相关性

转载 作者:太空宇宙 更新时间:2023-11-04 05:04:02 27 4
gpt4 key购买 nike

我有一个 Pandas 数据框,它有一个七年时间范围内的日期时间索引和 10 种不同 Assets 的价格数据。我想运行 dataframe.corr 函数来评估 Assets 之间的关系,我的问题是我想在特定月份运行 corr 函数。那么所有年份的一月有什么相关性?

根据我一直在阅读的内容,如果我按时间分组,我可能会失去正确的时间进程,这会使相关性分析变得无用。

如何按月对数据框进行分组并保持时间顺序?

最佳答案

使用 df['month'] = df.index.month 从 DatetimeIndex 中提取月份。然后按 month 分组:

import numpy as np
import pandas as pd
N = 100
index = pd.date_range('2000-1-1', periods=N, freq='B')
df = pd.DataFrame(np.random.random((N,3)), index=index)
df['month'] = df.index.month
result = df.groupby('month').corr()
print(result.head(9))

产生一个 DataFrame,其前几行如下所示:

                0         1         2
month
1 0 1.000000 -0.000325 -0.208282
1 -0.000325 1.000000 -0.236316
2 -0.208282 -0.236316 1.000000
2 0 1.000000 0.056222 -0.010197
1 0.056222 1.000000 -0.140247
2 -0.010197 -0.140247 1.000000
3 0 1.000000 -0.064615 -0.111025
1 -0.064615 1.000000 -0.100798
2 -0.111025 -0.100798 1.000000

这显示了 DataFrame 的列之间的相关性。请注意该索引是一个 MultiIndex,其第一级是月份,第二级指的是与关联关联的两个 DataFrame 列之一。

corr 方法忽略索引——它将 DataFrame 的两列视为数组。所以分组数据在时间上有差距是没有问题的。

关于python - 部分日期的 Pandas DataFrame 相关性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44946763/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com