2

我是 Pandas 的新手,想从专业人士那里得到一些见解。我需要对超过 30 个时间序列的金融证券的每日开盘价、最高价、最低价、收盘价执行各种统计分析(多元回归、相关性等)。每个系列都有 500-1500 天的数据。由于每个分析都针对多种证券,我想知道从易用性和效率的角度来看,是否最好将每个时间序列存储在一个单独的 df 中,每个都以日期作为索引,或者将它们全部合并到一个 df 中单个日期索引,实际上是 3d df。如果是后者,关于如何构建它的任何建议?

任何想法都非常感谢。

PS。我正在努力处理跨多个时区的日内数据,但这对于我的第一个 pandas 项目来说有点多;这是朝这个方向迈出的第一步。

4

2 回答 2

3

由于您只处理 OHLC,因此要处理的数据并不多,所以这很好。

对于这些类型的事情,我通常使用多索引(http://pandas.pydata.org/pandas-docs/stable/indexing.html),其中符号作为第一级,日期作为第二级。那么您可以只拥有 OHLC 列,一切就绪。

要访问多索引,请使用该.xs功能。

于 2014-03-19T13:45:25.937 回答
1

除非您要将所有内容与所有内容相关联,否则我的建议是将其放入单独的数据框中并将它们全部放入字典中,即{“Timeseries1”:df1,“Timeseries 2”:df2 ...}。然后,当您想将一些时间序列关联在一起时,您可以合并它们并将后缀放在每个不同 df 的列中以区分它们。

可能您对pandas的作者本人的关于Python for Financial Data Analysis with pandas的演讲感兴趣。

于 2014-03-19T13:44:26.080 回答