看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
本需求为,利用Pandas 分析近100年圣诞节的星期分布,目的是知道圣诞节都在星期几,哪个星期多些。
由于本需求没有给定源数据,需要我们自己生成,整体思路如下:
代码实现如下:
import pandas as pd
(
# 生成100年时间序列
pd.Series(pd.date_range('1920', '2021'))
# 筛选 12月25日 的所有日期
.loc[lambda s: (s.dt.month==12) & (s.dt.day==25)]
.dt.day_of_week # 转为星期数
.add(1) # 由于0代表周一,对序列加1,符合日常认知
.value_counts() # 重复值计数
.sort_values() # 排序,星期从1-7
.plot
.bar() # 绘制柱状图
)
输出图形为:
通过图形我们可以观察到,圣诞节在星期上的分布基本上比较均匀,与我们日常感知的在周五有很大出入,可能对于周五将休假的气氛与圣诞节的气氛对我们印象深刻,从而产生了错觉。
(完)
注:此案例收录在《深入浅出Pandas:利用Python进行数据处理与分析》17.2.9 小节。
更新时间:2024-08-18 15:40:18 标签:pandas python 可视化 时间日期