码迷,mamicode.com
首页 > 编程语言 > 详细

《利用python进行数据分析》读书笔记--第十章 时间序列

时间:2015-12-17 20:56:58      阅读:254      评论:0      收藏:0      [点我收藏+]

标签:

时间序列是很重要的。时间序列(time series)数据是一种重要的结构化数据格式。时间序列的意义取决于具体的应用场景,主要有以下几种:

  • 时间戳(timestamp),特定的时刻
  • 固定时期(period),如2015年全年
  • 时间间隔(interval),由起始和结束时间戳表示。就是说,时期可以是时间间隔的特例。
  • 实验或过程时间,每个时间点都是相对于特定起始时间的一个度量。例如,自从放入烤箱时起,每秒钟饼干的直径。

pandas提供了一组标准的时间序列处理工具和数据算法。因此可以高效处理非常大的时间序列,轻松进行切片/切块、聚合、对定期/不定期的时间序列进行重采样等。也就是说,大部分都对金融和经济数据尤为有用,当然也可以用它们来分析服务器日志数据。

1、日期和时间数据类型及工具

Python标准库中包含用于日期(date)、时间(time)数据的数据类型。而且还有日历方面的功能。主要会用到datetime、time、calendar模块。

#-*- coding:utf-8 -*-
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import datetime as dt
from datetime import datetime

now = datetime.now()
#datetime以毫秒形式储存时间
print now,now.year,now.month,now.day,now.microsecond,\n
#print datetime(2015,12,17,20,00,01,555555) #设置一个时间
#datetime.timedelta表示两个datetime对象之间的时间差
#换句话说,datetime格式可以相相减
delta = datetime(2011,1,7) - datetime(2008,6,24,8,15)
print delta
#把注意下面是days And seconds
print dt.timedelta(926,56700)
print delta.days
print delta.seconds
#下面是错误的
#print delta.minutes
start = datetime(2011,1,7)
#参数分别为days,seconds,microseconds(微秒),milliseconds(毫秒),minutes,hours,weeks,除了微秒小数自动四舍五入之外,其他的都能自动转换为其他度量
print start + dt.timedelta(1,20,0.5,5,10,10,0)
>>>
2015-12-17 20:24:21.829000 2015 12 17 829000 

926 days, 15:45:00
926 days, 15:45:00
926
56700
2011-01-08 10:10:20.005001
[Finished in 0.6s]

datetime中的数据类型有:

技术分享

  • 字符串和datetime的相互转换

利用str或者strftime方法(传入一个格式化字符串),datetime对象和pandas中timestamp对象就可以转换为字符串:

《利用python进行数据分析》读书笔记--第十章 时间序列

标签:

原文地址:http://www.cnblogs.com/batteryhp/p/5055149.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!