您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > Python

使用pandas处理时间变量

时间:2020-07-23 15:39:33  来源:  作者:

在使用Python进行数据分析时,经常会遇到时间日期格式处理和转换,特别是分析和挖掘与时间相关的数据。Pandas提供了强大的日期数据处理的功能,下面整理了一些使用pandas处理时间变量的常用技巧。

1.生成时间序列

import pandas as pd
import numpy as np

rng_day = pd.date_range('1/1/2011', periods=24, freq='D')
rng_month=pd.date_range('1/1/2011', periods=24, freq='M')
使用pandas处理时间变量

 

  pandas主要提供pd.data_range()和pd.period_range()两个方法,给定参数有起始时间、结束时间、生成时期的数目及时间频率(freq='M’月,'D’天,‘W’,周,'Y’年)等。

  两种主要区别在于pd.date_range()生成的是DatetimeIndex格式的日期序列;pd.period_range()生成的是PeriodIndex格式的日期序列。

2.转化日期格式 2.1 字符串转时间 方法一:使用pd.to_datetime()

## 方法一:使用pd.to_datetime()
series1=pd.to_datetime(['2020-07-22 20:07:30', '2020.07.23'])
series2=pd.to_datetime(['2020-07-22', '2020.07.23'])
print(series1)
print(series2)
使用pandas处理时间变量

 

方法二:使用datetime包的strptime方法

datestr = '2020-07-22 20:07:30'
date1 = datetime.datetime.strptime(datestr,'%Y-%m-%d %H:%M:%S')
print(date1)
使用pandas处理时间变量

 

  使用strptime方法时,转化的格式必须和字符串的格式一样。见上图,如果转换格式不一致将报错。

datestr = '2020-07-22 20:07:30'
date2 = datetime.datetime.strptime(datestr[0:7],'%Y-%m')
print(date2)

2.2日期转字符串

## 利用str或者strftime方法可以将datetime对象转换成字符串
date = datetime.datetime(2020,7,22,19,59,00)
datestr1 = datetime.datetime.strftime(date,'%Y-%m-%d %H:%M:%S')
datestr2 = datetime.datetime.strftime(date,'%Y-%m')
print(datestr1)
print(datestr2)
使用pandas处理时间变量

 

  使用strftime方法将日期转成字符串时,可以调整字符串的格式,并不是需要严格对应。

3.日期加减 3.1 日期加一天

date=datetime.date.today()
print(datetime.date.today()+datetime.timedelta(days=1))
使用pandas处理时间变量

 

3.2日期加一个月

## 日期加一个月,需要使用第三方库
from dateutil.relativedelta import relativedelta
 
datetime_now = datetime.datetime.now()
datetime_three_month_ago = datetime_now + relativedelta(months=+1)
print(datetime_three_month_ago)
使用pandas处理时间变量

 

4.计算日期之差

date_end=datetime.datetime.now()
date_start=pd.to_datetime('2020/01/01')
date_interval=date_end-date_start
print(date_interval)
print(f'时间相隔{date_interval.days}天')
print(f'时间相隔{date_interval/np.timedelta64(1,"M")}月')
print(f'时间相隔{date_interval/np.timedelta64(1,"D")}天')
print(f'时间相隔{int(date_interval/np.timedelta64(1,"D"))}天')
使用pandas处理时间变量

 

【作者】:Labryant

【原创公众号】:风控猎人

【简介】:某创业公司策略分析师,积极上进,努力提升。乾坤未定,你我都是黑马。

【转载说明】:转载请说明出处,谢谢合作!~



Tags:pandas   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
1. pandas介绍Pandas是一个强大的数据分析库,它的Series和DataFrame数据结构,使得处理起二维表格数据变得非常简单。基于后面需要对Excel表格数据进行处理,有时候使用Pandas库...【详细内容】
2021-05-18  Tags: pandas  点击:(208)  评论:(0)  加入收藏
导读:在Python中,进行数据分析的一个主要工具就是Pandas。Pandas是Wes McKinney在大型对冲基金AQR公司工作时开发的,后来该工具开源了,主要由社区进行维护和更新。Pandas具有Num...【详细内容】
2021-04-01  Tags: pandas  点击:(288)  评论:(0)  加入收藏
示例 Excel 数据我们以下面Excel 为例,演示Python Pandas Excel操作。 pd.read_excel的主要参数 io: excel文档路径。 sheetname : 读取的excel指定的sheet页,若多个则为列表...【详细内容】
2020-12-15  Tags: pandas  点击:(85)  评论:(0)  加入收藏
Pandas是Python第三方库,提供高性能易用数据类型和分析工具,pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型...【详细内容】
2020-07-28  Tags: pandas  点击:(77)  评论:(0)  加入收藏
在使用Python进行数据分析时,经常会遇到时间日期格式处理和转换,特别是分析和挖掘与时间相关的数据。Pandas提供了强大的日期数据处理的功能,下面整理了一些使用pandas处理时间...【详细内容】
2020-07-23  Tags: pandas  点击:(95)  评论:(0)  加入收藏
1. 什么是Series?Series是一种类似于一维数组的对象,与一维数组对象不同的是Series带有标签(索引),通俗来说就是一维带标签(索引)的一维数组。如下图所示:带有索引的一维数组2. 如何...【详细内容】
2020-07-19  Tags: pandas  点击:(51)  评论:(0)  加入收藏
一. 时间序列基础知识社会经济现象总是随着时间的推移而变迁,呈现动态性。一个或一组变量x(t)进行观测,将在一系列时刻t1、t2、...、tn得到离散数字组成的序列集合,称之为时间...【详细内容】
2020-07-14  Tags: pandas  点击:(255)  评论:(0)  加入收藏
要求:比较美国和中国星巴克店铺数量数据来源: https://www.kaggle.com/starbucks/store-locations/data在pandas中类似的分组的操作我们有很简单的方式来完成df.groupby(by="c...【详细内容】
2020-06-23  Tags: pandas  点击:(184)  评论:(0)  加入收藏
Pandas最初被作为金融数据分析工具而开发出来,因此,pandas为时间序列分析提供了很好的支持。Pandas的名称来自于面板数据(panel data)和python数据分析(data analysis)。panel dat...【详细内容】
2019-09-11  Tags: pandas  点击:(168)  评论:(0)  加入收藏
我们以Python Pandas数据加载类型表格为例,演示Python Pandas Excel操作。...【详细内容】
2019-09-06  Tags: pandas  点击:(216)  评论:(0)  加入收藏
▌简易百科推荐
Python 是一个很棒的语言。它是世界上发展最快的编程语言之一。它一次又一次地证明了在开发人员职位中和跨行业的数据科学职位中的实用性。整个 Python 及其库的生态系统使...【详细内容】
2021-12-27  IT资料库    Tags:Python 库   点击:(1)  评论:(0)  加入收藏
菜单驱动程序简介菜单驱动程序是通过显示选项列表从用户那里获取输入并允许用户从选项列表中选择输入的程序。菜单驱动程序的一个简单示例是 ATM(自动取款机)。在交易的情况下...【详细内容】
2021-12-27  子冉爱python    Tags:Python   点击:(1)  评论:(0)  加入收藏
有不少同学学完Python后仍然很难将其灵活运用。我整理15个Python入门的小程序。在实践中应用Python会有事半功倍的效果。01 实现二元二次函数实现数学里的二元二次函数:f(x,...【详细内容】
2021-12-22  程序汪小成    Tags:Python入门   点击:(32)  评论:(0)  加入收藏
Verilog是由一个个module组成的,下面是其中一个module在网表中的样子,我只需要提取module名字、实例化关系。module rst_filter ( ...); 端口声明... wire定义......【详细内容】
2021-12-22  编程啊青    Tags:Verilog   点击:(7)  评论:(0)  加入收藏
运行环境 如何从 MP4 视频中提取帧 将帧变成 GIF 创建 MP4 到 GIF GUI ...【详细内容】
2021-12-22  修道猿    Tags:Python   点击:(5)  评论:(0)  加入收藏
面向对象:Object Oriented Programming,简称OOP,即面向对象程序设计。类(Class)和对象(Object)类是用来描述具有相同属性和方法对象的集合。对象是类的具体实例。比如,学生都有...【详细内容】
2021-12-22  我头秃了    Tags:python   点击:(9)  评论:(0)  加入收藏
所谓内置函数,就是Python提供的, 可以直接拿来直接用的函数,比如大家熟悉的print,range、input等,也有不是很熟,但是很重要的,如enumerate、zip、join等,Python内置的这些函数非常...【详细内容】
2021-12-21  程序员小新ds    Tags:python初   点击:(5)  评论:(0)  加入收藏
Hi,大家好。我们在接口自动化测试项目中,有时候需要一些加密。今天给大伙介绍Python实现各种 加密 ,接口加解密再也不愁。目录一、项目加解密需求分析六、Python加密库PyCrypto...【详细内容】
2021-12-21  Python可乐    Tags:Python   点击:(7)  评论:(0)  加入收藏
借助pyautogui库,我们可以轻松地控制鼠标、键盘以及进行图像识别,实现自动抢课的功能1.准备工作我们在仓库里提供了2个必须的文件,包括: auto_get_lesson_pic_recognize.py:脚本...【详细内容】
2021-12-17  程序员道道    Tags:python   点击:(13)  评论:(0)  加入收藏
前言越来越多开发者表示,自从用了Python/Pandas,Excel都没有打开过了,用Python来处理与可视化表格就是四个字——非常快速!下面我来举几个明显的例子1.删除重复行和空...【详细内容】
2021-12-16  查理不是猹    Tags:Python   点击:(20)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条