时间序列-时期及其运算
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了时间序列-时期及其运算相关的知识,希望对你有一定的参考价值。
参考技术A 时期(Period)表示的是一个固定时间区间,比如数日、数月数季、数年等,例如一个账单是一段时间内的所有交易数据,这就是按月,季度等划分的固定时间区间。Period 类所表示的就是这种数据类型,其构造函数需要用到一个字符串或整数,以及频率:PeriodIndex 类保存了一组 Period,它可以在任何 pandas 数据结构中被用作轴索引:
Period 和 PeriodIndex 对象都可以通过其 asfreq 方法被转换成别的频率。假设我们有一个年度时期,希望将其转换为当年年初或年末的一个月度时期:
将 Period('2015','A-DEC')看做一个被划分为多个月度时期的时间段中的游标。对于一个不以12结束的财政年度,月度子时期的归属情况就不一样了:
在将高频率转换为低频率时,超时期(superperiod)是由子时期(subperiod)所属的位置决定的。例如,在 A-JUN 频率中,月份“2014年8月”实际上是属于周期“2015年”的:
季度型数据在会计、金融等领域中很常见。许多季度型数据都会涉及“财年末”的概念,通常是一年12个月中某月的最后一个日历日或工作日。就这一点来说,时期“2012Q4”根据财年末的不同会有不同的含义。pandas 支持12种可能的季度型频率,即 Q-JAN 到 Q-DEC:
因此,Period 之间的算术运算会非常简单。例如,要获取该季度倒数第二个工作日下午4点的时间戳,我们可以这样:
period_range 还可以用于生成季度型范围。季度型范围的算术运算也跟上面是一样的:
由于时期指的是非重叠时间区间,因此对于给定的频率,一个时间戳只能属于一个时期。新 PeriodIndex 的频率默认是从时间戳推断而来的,你也可以指定任何别的频率。结果中允许存在重复时期:
要转换为时间戳,使用 to_timestamp 即可
某些数据集中时间信息是分开在多个列存放的,可以通过PeriodIndex的参数将这些列组合在一起
以上是关于时间序列-时期及其运算的主要内容,如果未能解决你的问题,请参考以下文章