DataFrame频率信息

时间:2014-04-09 14:13:54

标签: python pandas

是否有意义按小时自动提取观察次数?

例如:   - 如果数据是每小时一次,则结果为1   - 如果数据为30分钟,则结果为2   - 如果数据是10分钟,结果是6,......

3 个答案:

答案 0 :(得分:1)

如果您想获得熊猫索引的频率,如果它有一个,那么你就去

 df.index.freq

这将返回频率。

这可能不准确,具体取决于系列。那么你要做的就是拿你的专栏和索引并将日期“四舍五入”到几个小时。然后,您可以计算唯一值:

from collections import Counter

counter = Counter(df['timestamps'].apply(lambda x: x.strftime('%Y-%m-%d-%H'))

所有计数的平均值,并查看每小时的频率

请注意,您的问题并不像您想象的那么清晰。时间序列可能有“空白”,并且总是存在关于截止的问题。所以你的问题有些含糊不清。只有你能知道最有意义的答案。

答案 1 :(得分:0)

以下代码中,需要获得' H' (频率)。然后,我可以创建一个函数来归属1,对于' 30Min',...

>>> df.info()
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 17520 entries, 2015-01-01 00:00:00 to 2016-12-30 23:00:00
Freq: H
Data columns (total 9 columns):
value            17520 non-null float64

我需要获取频率参数。

答案 2 :(得分:0)

我发现以下变量可以满足我的需要:

>>> df.index.freqstr
'H'