时间戳tiimestamp:固定的时刻->pd.Timestamp

固定时期period:比如2016年3月份,再如2015年销售额->pd.Period

时间间隔interval:由起始时间和结束时间来表示,固定时期是时间间隔的一个特殊

时间日期在Pandas里的作用:分析金融数据,如股票交易数据

 import pandas as pd
import numpy as np # 处理时间需要用到的包
from datetime import datetime
from datetime import timedelta now = datetime.now() # 输出当前的时间
# 例如输出 datetime.datetime(2019, 8, 23, 17, 45, 13, 291738)
now.year,now.month,now.day # 输出年月日 (2019, 8, 23) data1 = datetime(2016, 4, 20)
data2 = datetime(2016, 4, 16)
delta = data1 - data2 # 输出datetime.timedelta(4)
delta.days # 输出4
delta.total_seconds() #输出间隔345600.0秒
data2 + delta # 返回某天的日期datetime.datetime(2016, 4, 20, 0, 0)
data2 + timedelta(4.5) #4.5天,它将输出datetime.datetime(2016, 4, 20, 12, 0) date = datetime(2016,3,20,8,30)
str(date) # 将date转换成字符串形式'2016-03-20 08:30:00'
date.strftime("%Y/%m/%d %H:%M:%S") # 格式化输出'2016/03/20 08:30:00' datetime.strptime('2016-03-20 09:30', '%Y-%m-%d %H:%M')
# 去格式化输出datetime.datetime(2016, 3, 20, 9, 30) dates = [datetime(2016,3,1),datetime(2016,3,2),
datetime(2016,3,3),datetime(2016,3,4)]
s = pd.Series(np.random.randn(4),index=dates)
# 将时间变成索引以Series方式输出
type(s.index) # 它的返回值pandas.core.indexes.datetimes.DatetimeIndex
type(s.index[0]) # 它的返回值pandas._libs.tslibs.timestamps.Timestamp pd.date_range('','') # 输出时间列表,间隔频率默认为/D pd.date_range('20160320 16:32:38',periods=10,normalize=True)
# 输出10天间隔频率默认为/D即每天,采用正则化normalize=True去掉16:32:38 pd.date_range('',periods=10, freq='M')
# 输出每个月的月末时间,总共连续10个月,时间间隔频率是月
# freq=BM(每个月最后一个工作日)、W以周为频率、4H以4小时为频率 p = pd.Period(2010, freq='M') # 以月份为时间段,输出Period('2010-01', 'M')
p+2 # 就会输输出Period('2010-03', 'M') pd.period_range('2016-01',periods=10,freq='M')
# 以月份为间隔频率输出连续10个月 pd.period_range('2016Q1',periods=10,freq='Q')
# 以季节为间隔频率输出连续的10个季节 a = pd.Period(2016) # 它的默认频段为年
a.asfreq('M') # 输出Period('2016-12', 'M') 以最后一个月为时期默认频段变为月
a.asfreq('M',how='start') # 时期变为1月 Period('2016-01', 'M')
p = pd.Period('2016-04',freq='M') # 自定义时期Period('2016-04', 'M') #
p.asfreq('A-DEC') #频率转换为以年为单位12月结束 输出 Period('2016', 'A-DEC')
p.asfreq('A-MAR') #介入月份变为3月份时时间就到了2017年3月份 p = pd.Period('2016Q4','Q-JAN') # 以一月份结束的季度
# 下一行可以知道2016Q4的起始时间与结束时间
p.asfreq('M',how='start'), p.asfreq('M',how='end') # 获取该季度倒数第二个工作日下午4点20分
(p.asfreq('B') - 1).asfreq('T') + 16 * 60 +20

pandas之时间序列笔记的更多相关文章

  1. pandas包学习笔记

    目录 zip Importing & exporting data Plotting with pandas Visual exploratory data analysis 折线图 散点图 ...

  2. 笔记 | pandas之时间序列学习随笔1

    1. 时间序列自动生成 ts = pd.Series(np.arange(1, 901), index=pd.date_range('2010-1-1', periods=900)) 最终生成了从20 ...

  3. pandas库学习笔记(二)DataFrame入门学习

    Pandas基本介绍——DataFrame入门学习 前篇文章中,小生初步介绍pandas库中的Series结构的创建与运算,今天小生继续“死磕自己”为大家介绍pandas库的另一种最为常见的数据结构D ...

  4. Pandas快速入门笔记

    我正以Python作为突破口,入门机器学习相关知识.出于机器学习实践过程中的需要,我快速了解了一下提供了类似关系型或标签型数据结构的Pandas的使用方法.下面记录相关学习笔记. 数据结构 Panda ...

  5. pandas处理时间序列(4): 移动窗口函数

    六.移动窗口函数 移动窗口和指数加权函数类别如↓: rolling_mean 移动窗口的均值 pandas.rolling_mean(arg, window, min_periods=None, fr ...

  6. pandas处理时间序列(3):重采样与频率转换

    五.重采样与频率转换 1. resample方法 rng = pd.date_range('1/3/2019',periods=1000,freq='D') rng 2. 降采样 (1)resampl ...

  7. 03. Pandas 2| 时间序列

    1.时间模块:datetime datetime模块,主要掌握:datetime.date(), datetime.datetime(), datetime.timedelta() 日期解析方法:pa ...

  8. pandas处理时间序列(2):DatetimeIndex、索引和选择、含有重复索引的时间序列、日期范围与频率和移位、时间区间和区间算术

    一.时间序列基础 1. 时间戳索引DatetimeIndex 生成20个DatetimeIndex from datetime import datetime dates = pd.date_rang ...

  9. pandas处理时间序列(1):pd.Timestamp()、pd.Timedelta()、pd.datetime( )、 pd.Period()、pd.to_timestamp()、datetime.strftime()、pd.to_datetime( )、pd.to_period()

      Pandas库是处理时间序列的利器,pandas有着强大的日期数据处理功能,可以按日期筛选数据.按日期显示数据.按日期统计数据.   pandas的实际类型主要分为: timestamp(时间戳) ...

随机推荐

  1. ubuntu之路——day10.7 提高模型的表现

    总结一下就是在提升偏差的方面(即贝叶斯最优误差和训练误差的差距) 1.尝试更大更深的网络 2.加入优化算法比如前面提过的momentum.RMSprop.Adam等 3.使用别的神经网络架构比如RNN ...

  2. 【转】php7+IIS 配置环境(windows环境)

    继php7+apache2.4 配置环境(window环境)后,由于B2C项目准备上线:特此小编在阿里云上搭建PHP7环境,为此特写上搭建过程希望正处于搭建php7+IIS(windows环境)中的朋 ...

  3. Java-Maven(十):Maven 项目常用plugins

    本文主要总结最近一段时间使用maven时,遇到需要maven plugins的一些简单总结. 1)在Build下重新指定最终打包报名 <build> <!--最终打包的包名,如果这里 ...

  4. 从Windows命令行启动MySQL

    SERVER: 从Windows命令行启动MySQL 可以从命令行手动启动MySQL服务器.可以在任何版本的Windows中实现. 要想从命令行启动mysqld服务器,你应当启动控制台窗口(或“DOS ...

  5. go之web框架 iris

    前言 最近开始学习GO的WEB框架,IRIS号称是Go最快的后端Web框架,目前发展最快的Go Web框架.提供完整的MVC功能并且面向未来. 所以先从它开始. github地址 https://gi ...

  6. AI项目(CV方向)研发流程

  7. Java基础 main 参数String[] args的用法

        JDK :OpenJDK-11      OS :CentOS 7.6.1810      IDE :Eclipse 2019‑03 typesetting :Markdown   code ...

  8. python清理docker-harbor的多余镜像

    # coding: utf-8 from operator import itemgetter from urllib import parse import requests import date ...

  9. js 解析 JSON 数据

    JSON 数据如下: { "name": "mkyong", , "address": { "streetAddress" ...

  10. 重装Mac系统

    首先介绍重装macos的一些重要事项: 重装系统之前需要弄清楚本机上安装的系统版本. 重装系统是需要管理员账户的. 获取系统镜像有多种方式,其中最常见的方式是从appstore中获取,但要注意的是要确 ...