¿Hay una manera de recuperar la frecuencia de una serie de tiempo en pandas?
rng = date_range("1/1/2011", periods=72, freq="H")
ts =pd.Series(np.random.randn(len(rng)), index=rng)
ts.frequency o ts.period no son métodos disponibles.
Gracias
Editar: ¿Podemos inferir la frecuencia de series de tiempo que no especifican la frecuencia?
import pandas.io.data as web
aapl = web.get_data_yahoo("AAPL")
<class "pandas.tseries.index.DatetimeIndex">
[2010-01-04 00:00:00, ..., 2013-12-19 00:00:00]
Length: 999, Freq: None, Timezone: None
¿Podemos de alguna manera poder la frecuencia de las aapl? Como sabemos, son días hábiles.
Respuestas
10 por respuesta № 1por DatetimeIndex
>>> rng
<class "pandas.tseries.index.DatetimeIndex">
[2011-01-01 00:00:00, ..., 2011-01-03 23:00:00]
Length: 72, Freq: H, Timezone: None
>>> len(rng)
72
>>> rng.freq
<1 Hour>
>>> rng.freqstr
"H"
Similarmente para series indexadas con este índice.
>>> ts.index.freq
<1 Hour>
9 para la respuesta № 2
Para inferir la frecuencia, solo use el fct incorporado "infer_freq"
import pandas as pd
pd.infer_freq(ts.index)