首页 > 其他 > 详细

代码:利用多项式拟合淘宝双11 数据。

时间:2019-11-14 13:00:13      阅读:99      评论:0      收藏:0      [点我收藏+]

天猫官方公布了今年的双11成交额为2684亿元,成功刷新了自己创下的商业纪录。

 

代码:利用多项式拟合淘宝双11 数据。

环境:python 3.6 ,  jupyter Notebook

 

%matplotlib
import matplotlib.pyplot as plt
import numpy as np
from matplotlib import font_manager as fm
zhongwen_font = fm.FontProperties(fname=C:\Windows\Fonts\simsun.ttc) 

x = np.array([year for year in range(2009,2019)])
y = np.array([0.5,9.36,52,191,352,571,912,1207,1682.69,2135])
z1 = np.polyfit(x, y, 3) # 用多项式拟合
p1 = np.poly1d(z1)

yvals=p1(x)
plot1=plt.plot(x, y, *,label=实际销售额)
plot2=plt.plot(x, yvals, r,label=拟合销售额)

# 设置坐标轴刻度
_xticks_labels = ["{}年".format(i) for i in x]
plt.xticks(x,_xticks_labels,rotation=45,fontproperties = zhongwen_font)

plt.xlabel(年份, fontproperties = zhongwen_font)
plt.ylabel(销售额(亿), fontproperties = zhongwen_font)

# 绘制网格
plt.grid(alpha=0.4)

# 添加图例,指定legend的位置
plt.legend(loc="best", prop = zhongwen_font)
plt.title(2009-2018淘宝双11 销售额拟合曲线, fontproperties = zhongwen_font)
# 图片大小和分辨率
plt.figure(figsize=(18, 18),dpi=80)
plt.savefig("./taobao201911.png")
plt.show()

# 打印拟合多项式
print(拟合多项式:,p1) 
p1 = np.poly1d(z1)
print("-"*40)
print(2019年预测值:,p1(2019))  
print(2020年预测值:,p1(2020)) 
print(2021年预测值:,p1(2021))  
print(2022年预测值:,p1(2022)) 

 

 


 

技术分享图片

 

 

 

打印结果如下:


Using matplotlib backend: Qt5Agg
拟合多项式:        3         2
0.159 x - 930.2 x + 1.813e+06 x - 1.176e+09
----------------------------------------
2019年预测值: 2689.0133340358734
2020年预测值: 3301.523639678955
2021年预测值: 3980.3633403778076
2022年预测值: 4726.486259460449

 

利用三次多项式预测的数据与公布的结果确实很相近。

我们继续搞事情。

将今年2019年的2684亿导入,预测一下后面三年:

2019年预测值: 2689.0133340358734
2020年预测值: 3301.523639678955
2021年预测值: 3980.3633403778076
2022年预测值: 4726.486259460449

 

 你对此事的看法到底如何?

 绘图如下:
技术分享图片


欢迎关注: 一只阿木木

代码:利用多项式拟合淘宝双11 数据。

原文:https://www.cnblogs.com/yizhiamumu/p/11855641.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!