Pandas时间序列数据操作

     作者:大邓

     来源:大邓和他的Python

一、 pd.to_datetime()

将日期字符串转化为datetime类型数据

import pandas as pd

pd.to_datetime('2020-05-03')
Timestamp('2020-05-03 00:00:00')

二、datetime可以比大小

day1 = pd.to_datetime('2020-05-01')

day3 = pd.to_datetime('2020-05-03')

day1
True

导入实验数据

import pandas as pd

df = pd.read_csv('data/aapl.csv')
df

Pandas时间序列数据操作_第1张图片


三、从df中筛选出符合条件的数据

  • 把小(早)于某日期的数据筛选出来

  • 把某日期区间的数据筛选出来

我们需要先将Date转化为datetime数据类型

#用pd.to_datetime处理Date列
df['Date'] = pd.to_datetime(df['Date'])
df

Pandas时间序列数据操作_第2张图片


#选取2016-12-01之后的数据
someday = pd.to_datetime('2016-12-01')
df[df['Date']>someday]

Pandas时间序列数据操作_第3张图片


#选取2016-12-01之前的数据
someday = pd.to_datetime('2016-12-01')
df[df['Date']

Pandas时间序列数据操作_第4张图片


#把2016-12-01到2017-05-01之间的数据选出来
mindate = pd.to_datetime('2016-12-01')
maxdate = pd.to_datetime('2017-05-01')

df[(mindate

Pandas时间序列数据操作_第5张图片


四、日期Series.dt操作

datetime数据类型的Series有dt属性,而dt有以下方法属性(方法)

  • year

  • month

  • day

  • hour

  • minute

  • second

  • day_name()

  • month_name()

#每条记录的所在年份
df['Date'].dt.year

Pandas时间序列数据操作_第6张图片


df['Date'].dt.month

Pandas时间序列数据操作_第7张图片


df['Date'].dt.day

Pandas时间序列数据操作_第8张图片


df['Date'].dt.day_name()

Pandas时间序列数据操作_第9张图片


df['Date'].dt.month_name()

Pandas时间序列数据操作_第10张图片


#选择周一  的所有的数据
df[df['Date'].dt.day_name()=='Monday']

Pandas时间序列数据操作_第11张图片


五、将日期Series设置为行索引

注意这里的Series是datetime类型的Series

  • 选择某年数据

  • 选择某年某月的数据

  • 选择某日的数据

#将Date设置为index
df.set_index('Date', inplace=True)
df

Pandas时间序列数据操作_第12张图片


#选择2016
df['2016']

Pandas时间序列数据操作_第13张图片


#选择某年月数据
df['2016-12']

Pandas时间序列数据操作_第14张图片


#选择某日数据
df['2016-12-02']

Pandas时间序列数据操作_第15张图片

◆ ◆ ◆  ◆ 

长按二维码关注我们


数据森麟公众号的交流群已经建立,许多小伙伴已经加入其中,感谢大家的支持。大家可以在群里交流关于数据分析&数据挖掘的相关内容,还没有加入的小伙伴可以扫描下方管理员二维码,进群前一定要关注公众号奥,关注后让管理员帮忙拉进群,期待大家的加入。

管理员二维码:

猜你喜欢

 笑死人不偿命的知乎沙雕问题排行榜

 用Python扒出B站那些“惊为天人”的阿婆主!

 全球股市跳水大战,谁最坑爹!

● 华农兄弟、徐大Sao&李子柒?谁才是B站美食区的最强王者?

● 你相信逛B站也能学编程

你可能感兴趣的:(Pandas时间序列数据操作)