无法自动推断 Quandl 时间序列数据帧的频率

Unable to automatically infer frequency of Quandl Time Series Dataframe

我下载了一个 Quandl 数据集。我无法使用 infer_freqfreq 推断或找到数据的频率。这两种方法没有 return 任何东西。我不明白是什么问题。

我想要see/print数据的频率,虽然我知道它是'daily'。

下面是我用过的代码。

!pip install quandl

QUANDL_KEY = {my key}
quandl.ApiConfig.api_key = QUANDL_KEY

df = quandl.get(dataset='WIKI/SLB',  start_date='2018-01-01', end_date='2020-12-17')

pd.infer_freq(df.index, warn=True) #returns nothing
#df.index.freq  ## also returns nothing

#type(df.index) #pandas.core.indexes.datetimes.DatetimeIndex

对于股票数据,周末没有数据,因此 pandas 无法推断频率。如果缺少数据,pd.infer_freq(df.index) 将 return None。我猜你不想做 df.asfreq('D') 因为这将为缺失数据创建 None 值。 如果你真的想从你的 Dataframe 中推断出频率,你可以只检查连续行之间的时间增量(假设你最终没有得到对应于周末的 3 天的时间增量)

td = df.index[1] - df.index[0]
freq = td.days  # or explore td.components