Pandas对日期数据的处理

Pandas对日期数据的处理

文章目录

前言

Pandas中提供了许多简单易用的日期数据处理函数,包括将字符串转换成为对应的日期数据,根据日期来选取数据等等。接下来,让我们了解一下Pandas中对日期数据的处理。

一、将字符串转换为日期类型

1、将字符串形式的日期数据转换成为日期类型,方便后续处理

代码如下:

将各种日期字符串转换成日期格式
import pandas as pd
data = ['12Feb23', '20201225', '2022/12/25', '2018.7.12']
columns = ['日期']
df = pd.DataFrame(data = data, columns = columns)
df['转换后'] = pd.to_datetime(df['日期'])
df

运行结果:

Pandas对日期数据的处理

2、根据多列中的数据,组成一列为日期类型

代码如下:

从多列中组合成一个日期
df = pd.DataFrame({
    'year' : [2018, 2019, 2020],
    'month' : [2, 3, 4],
    'day' : [22, 12, 30],
    'hour' : [12, 14, 15],
    'minute' : [19, 30, 45],
    'second' : [12, 23, 45]
})
df['组合后的日期'] = pd.to_datetime(df)
df

运行结果:

Pandas对日期数据的处理

二、dt对象的使用

pandas可以使用dt对象获取datetime数据类型的特定信息

代码如下:

dt 对象的使用
import pandas as pd
df = pd.read_excel('datetime.xlsx')
df['日期'] = pd.to_datetime(df['原日期'])
df['年'] = df['日期'].dt.year
df['月'] = df['日期'].dt.month
df['日'] = df['日期'].dt.day
df['星期几'] = df['日期'].dt.day_name()
df['是否年底'] = df['日期'].dt.is_year_end
df

运行结果:

Pandas对日期数据的处理

三、根据日期获取数据

代码如下:

获取日期区间的数据
import pandas as pd
df = pd.read_excel('销售数据.xlsx')
df.sort_values(by = '日期', inplace = True)
df = df.set_index('日期')
df
df['2021']
df['2021-01']
df['2021-01-23':'2021-01-23'] #查看某一日数据
df['2021-01-23':'2021-02-23']

四、根据日期统计数据

代码如下:

按照不同时期统计数据
import pandas as pd
df = pd.read_excel('销售数据.xlsx')
df = df.set_index('日期')
按年统计求和
df1 = df.resample('AS').sum()
df1
按季度统计求和
df2 = df.resample('Q').sum()
df2
按月度统计求和
df3 = df.resample('M').sum()
df3
按周统计求和
df4 = df.resample('W').sum()
df4
按天统计求和
df5 = df.resample('D').sum()
df5

运行结果(按照年统计求和)

Pandas对日期数据的处理

五、根据日期显示数据

代码如下:

按照不同时期显示数据
import pandas as pd
df = pd.read_excel('销售数据.xlsx')
df = df.set_index('日期')
df = df.sort_values('日期')
df

df1 = df.to_period('A')
df1

df2 = df.to_period('Q')
df2

df3 = df.to_period('M')
df3

df4 = df.to_period('W')
df4

df5 = df.to_period('D')
df5

运行结果:

Pandas对日期数据的处理

六、根据日期统计并显示数据

代码如下:

按时期统计并显示数据
import pandas as pd
df = pd.read_excel('销售数据.xlsx')
df = df.set_index('日期')
df = df.sort_values('日期')
df

按照季度统计数据
df1 = df.resample('Q').sum()
print(df1)

按照季度统计数据并显示
df2 = df.resample('Q').sum().to_period('Q')
df2

运行结果:

Pandas对日期数据的处理

总结

以上就是今天要讲的内容,本文仅仅简单介绍了pandas中对日期类型的处理,和根据日期类型对数据进行统计显示

Original: https://blog.csdn.net/qq_42931634/article/details/126691901
Author: 所有不开心都是闲出来的
Title: Pandas对日期数据的处理

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/679315/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球