Python数据分析案例之时间序列分析

等风来也等你

共 4211字,需浏览 9分钟

 ·

2024-04-11 06:34

f0b368ce2d2dbc278431425261a7dac7.webp


概述:什么是时间序列

顾名思义,时间序列就是按照时间顺序排列的一组数据序列。时间序列分析就是找出数据变化发展的规律,从而预测未来的走势。 时间序列分析有以下几种表现形式: ○长期趋势变化:受某种因素的影响,数据依据时间变化,按某种规则稳步增长或下降。使用的分析方法有:移动平均法、指数平滑法等。 季节性周期变化:受季节更替等因素影响,数据依据固定周期规则性的变化。季节性周期变化,不局限于自然季节,还包括月、周等短期周期。例如,空调、羽绒服、冷饮的销售,双十一、双十二流量在一周之内的波动等。采用的方法:季节指数。 循环变化:指一种较长时间的上下起伏周期性波动,一般循环时间在2~15 年。  随机性变化:由许多不确定因素引起的数据变化,在时间序列中无法预计。

案例: 年增长趋势和季节性波动分析

下面分析淘宝店铺近三年的增长趋势和季节性波动,如图13 所示。从分析结果得出,近三年淘宝店铺的收入呈现持续稳定增长趋势,但在2019 年有所下降,季节性波动比较明显,而每年的第4 季度是销售“旺季”。

368f63dec6bf208fe975c4c4029419cd.webp

图13  年增长趋势和季节性波动

程序代码如下:

                  
                    import pandas as pd
                  
                  
                    
                      
import matplotlib.pyplot as plt
df = pd.read_excel('TB.xls')
df1=df[['订单付款时间','买家实际支付金额']]
df1 = df1.set_index('订单付款时间') #将“订单付款时间”设置为索引
plt.rcParams['font.sans-serif']=['SimHei'] #解决中文乱码
#按年统计数据
df_y=df1.resample('AS').sum().to_period('A')
print(df_y)
#按季度统计数据
df_q=df1.resample('Q').sum().to_period('Q')
print(df_q)
#绘制子图
fig = plt.figure(figsize=(8,3))
ax=fig.subplots(1,2)
df_y.plot(subplots=True,ax=ax[0])
df_q.plot(subplots=True,ax=ax[1])
#调整图表距上部和底部的空白
plt.subplots_adjust(top=0.95,bottom=0.2)
plt.show()__



51e4f8cb9aa18faf057182bcc247c932.webp

浏览 14
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报