Period(‘2011’, freq = ‘A-DEC’)可以看成多个时间期的时间段中的游标

一、创建PeriodIndex数据类型

1、 pd.PeriodIndex(data=[], freq=‘’)

import pandas as pd
from datetime import datetime# pd.PeriodIndex()# 直接直接构建,支持str、datetime.datetime
periods1 = pd.PeriodIndex(data=['2011-1', '2011-2', '2011-3'], freq='M')
periods2 = pd.PeriodIndex(data=[datetime(2015, 6, 1), datetime(2015, 7, 1), datetime(2015, 8, 1)], freq='M')print("periods1 = {0}, type(periods1) = {1}".format(periods1, type(periods1)))
print("-" * 50)
print("periods1[0] = {0}, type(periods1[0]) = {1}".format(periods1[0], type(periods1[0])))
print("-" * 200)
print("periods2 = {0}, type(periods2) = {1}".format(periods2, type(periods2)))
print("-" * 50)
print("periods2[0] = {0}, type(periods2[0]) = {1}".format(periods2[0], type(periods2[0])))

打印结果:

periods1 = PeriodIndex(['2011-01', '2011-02', '2011-03'], dtype='period[M]', freq='M'), type(periods1) = <class 'pandas.core.indexes.period.PeriodIndex'>
--------------------------------------------------
periods1[0] = 2011-01, type(periods1[0]) = <class 'pandas._libs.tslibs.period.Period'>
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
periods2 = PeriodIndex(['2015-06', '2015-07', '2015-08'], dtype='period[M]', freq='M'), type(periods2) = <class 'pandas.core.indexes.period.PeriodIndex'>
--------------------------------------------------
periods2[0] = 2015-06, type(periods2[0]) = <class 'pandas._libs.tslibs.period.Period'>Process finished with exit code 0

2、 pd.period_range(start=‘’, end=‘’, freq=‘’)

pd.period_range()创建时期范围

import numpy as np
import pandas as pd# pd.period_range()创建时期范围# 数据格式为PeriodIndex,单个数值为Period
prng = pd.period_range(start='1/1/2011', end='1/1/2012', freq='M')
print("prng = {0}, type(prng) = {1}".format(prng, type(prng)))
print("-" * 50)
print("prng[0] = {0}, type(prng[0]) = {1}".format(prng[0], type(prng[0])))
print("-" * 100)

打印结果:

prng = PeriodIndex(['2011-01', '2011-02', '2011-03', '2011-04', '2011-05', '2011-06', '2011-07', '2011-08', '2011-09', '2011-10', '2011-11', '2011-12', '2012-01'],dtype='period[M]', freq='M'), type(prng) = <class 'pandas.core.indexes.period.PeriodIndex'>
--------------------------------------------------
prng[0] = 2011-01, type(prng[0]) = <class 'pandas._libs.tslibs.period.Period'>
----------------------------------------------------------------------------------------------------

二、频率转换

import pandas as pd# asfreq:频率转换periods = pd.period_range('2017', '2018', freq='M')
print("periods = ", periods)
print("type(periods) = ", type(periods))
print("-" * 100)# 通过.asfreq(freq, method=None, how=None)方法转换成别的频率
periods1 = periods.asfreq(freq='D', how='start')
print("periods1 = ", periods1)
print("type(periods1) = ", type(periods1))
print("-" * 100)

打印结果:

periods =  PeriodIndex(['2017-01', '2017-02', '2017-03', '2017-04', '2017-05', '2017-06','2017-07', '2017-08', '2017-09', '2017-10', '2017-11', '2017-12','2018-01'],dtype='period[M]', freq='M')
type(periods) =  <class 'pandas.core.indexes.period.PeriodIndex'>
----------------------------------------------------------------------------------------------------
periods1 =  PeriodIndex(['2017-01-01', '2017-02-01', '2017-03-01', '2017-04-01','2017-05-01', '2017-06-01', '2017-07-01', '2017-08-01','2017-09-01', '2017-10-01', '2017-11-01', '2017-12-01','2018-01-01'],dtype='period[D]', freq='D')
type(periods1) =  <class 'pandas.core.indexes.period.PeriodIndex'>
----------------------------------------------------------------------------------------------------Process finished with exit code 0



参考资料:
pandas 周期索引 PeriodIndex
pandas的PeriodIndex的用法

Pandas-时期(二)-数据类型:PeriodIndex(其中每个元素的类型为:Period)【创建:①pd.PeriodIndex([], freq=‘‘);②pd.period_range()】相关推荐

  1. Pandas-时间(二)-数据类型:DatetimeIndex(其中每个元素的类型为:Timestamp)【创建方式:①pd.DatetimeIndex([]);②pd.to_datetime()】

    一.pd.DatetimeIndex():直接创建 import pandas as pd from datetime import datetime# pd.DatetimeIndex()# 直接生 ...

  2. Pandas的DataFrame数据类型

    Pandas的DataFrame数据类型 纵轴表示不同索引axis=0,横轴表示不同列axis=1 DataFrame类型创建 1.从二维ndarray对象创建 import pandas as pd ...

  3. 用Numpy和Pandas分析二维数据笔记

    用Numpy和Pandas分析二维数据 上节课,我们利用numpy和pandas分析了一维数据.在这节课中,你将学到这两种库的更多特性.并用它们来分析 二维数据,这节课后,你将能够使用pandas重新 ...

  4. Python 数据分析三剑客之 Pandas(二):Index 索引对象以及各种索引操作

    CSDN 课程推荐:<迈向数据科学家:带你玩转Python数据分析>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python ...

  5. pythonsze_python学习笔记二 数据类型(基础篇)

    Python基础 对于Python,一切事物都是对象,对象基于类创建 不同类型的类可以创造出字符串,数字,列表这样的对象,比如"koka".24.['北京', '上海', '深圳' ...

  6. 数据分析---数据处理工具pandas(二)

    文章目录 数据分析---数据处理工具pandas(二) 一.Pandas数据结构Dataframe:基本概念及创建 1.DataFrame简介 2.创建Dataframe (1)方法一:由数组/lis ...

  7. java二维数组遍历与元素查找

    java二维数组 格式 数据类型 [ ][ ] arrayName = new 数据类型[一维数组的个数][每个一维数组的长度] 例如: int [ ][ ] array = new int [2][ ...

  8. Python pandas 里面的数据类型坑,astype要慎用

    背景 最近在项目处理数据时,对pandas里面的数据类型进行转换时(astype),产生了一些意外的情况,经过研究,对数据框里面的数据类型,又有了新的认识,分享出来供大家参考学习. 创建模拟数据 模拟 ...

  9. C#2.0实例程序STEP BY STEP--实例二:数据类型

    C#2.0实例程序STEP BY STEP--实例二:数据类型 与其他.NET语言一样,C#支持Common Type Sysem(CTS),其中的数据类型集合不仅包含我们熟悉的基本类型,例如int, ...

最新文章

  1. sklearn RandomForest(随机森林)模型使用RandomSearchCV获取最优参数及模型效能可视化
  2. C/C++栈溢出的几种解决办法
  3. setTimeout 定时器的使用
  4. SpringData Jpa、Hibernate、Jpa 三者之间的关系
  5. Zend_Feed 的项目实际应用
  6. 集合对象根据某个字段首字母排序
  7. asp.net2.0跨域问题
  8. 匿名函数自我调用_Python中的匿名函数及递归思想简析
  9. windows下的工具链 树莓派_Windows下交叉编译Qt 5.14.2至树莓派平台 QEMU模拟树莓派...
  10. 内核中的UDP socket流程(1)
  11. jsx 调用php,JavaScript_JavaScript的React框架中的JSX语法学习入门教程,什么是JSX? 在用React写组件的 - phpStudy...
  12. mysql 权限管理无效_mysql 权限控制笔记
  13. ITIL入门 ITSM入门 事件入门 事件管理入门
  14. 有选择的忽略PyCharm 3的PEP8语言风格警告提示信息
  15. 逆向webpack打包,还原出原始文件。
  16. 2021-03-23
  17. 谷歌浏览器登录不了账号_腾讯qq无故冻结账号什么情况?qq号为什么登录不了方法官方回应_海峡网...
  18. python2.7常用的标准库
  19. sql计算除法保留两位小数
  20. Matlab:安装详细教程

热门文章

  1. Flask操作指南,留着练习
  2. 关于今年五一调休。。
  3. java实现视频和配音音频的合成
  4. MT5 EA交易期货-挂单撤单
  5. 洛谷B2092 开关灯(样本观察)
  6. anychat-极简纯净的websocket聊天插件推荐
  7. 在 PowerShell 中使用 SQL Server (1)
  8. 百度成为“中国探月航天工程人工智能全球战略合作伙伴”
  9. 需求基本流程和要求——公司培训
  10. 【三维目标检测】SSN(一)