雙11結束了,大家已經無手可剁 ,你們都貢獻了多少啊?
天貓官方公布了今年的雙11成交額為2684億元,成功重新整理了自己創下的商業紀錄。按理說大家已經習慣了逐年增長,沒想到。。。
由于過于完美,引發網友提出質疑。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnLkRGZmVjY4EWN2ETOmljZ3YjNygTMwEWM0UzNlRGMkBDNxMTM1IWNi9CXt92Yu4GZjlGbh5SZslmZxl3Lc9CX6MHc0RHaiojIsJye.png)
該微網誌在天貓公布2019年銷售額後,引發大量讨論,成功登上熱搜。
一些人提出了相反意見:某大V表示天貓雙11資料是精确地控制了交易額,進而形成了理想的曲線。
而天貓相關負責人回應稱,符合趨勢就假?造謠要負法律責任。
我們且不評論是真是假,先想想我們能幹點什麼呢?
不如先照着這位微網誌網友的步驟來複現一遍吧。
利用Excel進行拟合
這位微網誌網友使用的工具似乎是Excel,我安裝的是WPS,應該也能勝任。
先将天貓2009年-2018年的雙十一曆年銷售額曆史資料導入到一張表裡。
點選插入一張散點圖。
左鍵點選一下任意一個散點資料,出現散點資料選擇狀态。
滑鼠右擊,彈出提示框,點選“添加趨勢線”。
在WPS表格右側,找到趨勢線屬性按鈕,左鍵單擊一下,彈出趨勢線屬性框。
選擇三次多項式,得到結果√
其中R²=0.9994,這與微網誌網友的預測值一緻,說明我們的方法是對的。
天貓雙11資料過于完美,引網友質疑,用Python算算就知道了啊
over。
停一停,
作為Python專業愛好者,怎麼能能少了Python呢?
利用Python進行拟合并預測
我們在Python中可以利用numpy求解多項式以及多項式拟合。
嘗試用numpy的polyfit函數進行拟合,并作圖。
代碼如下:
import matplotlib.pyplot as plt
import numpy as np
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) # 用3次多項式拟合
p1 = np.poly1d(z1)
yvals=p1(x)
plot1=plt.plot(x, y, '*',label='實際銷售額')
plot2=plt.plot(x, yvals, 'r',label='拟合銷售額')
plt.xlabel('年份')
plt.ylabel('銷售額(億)')
plt.legend(loc=4) # 指定legend的位置
plt.title('2009-2018淘寶雙十一銷售額拟合曲線')
plt.figure(figsize=(10, 10))
plt.show()
print('拟合多項式:',p1) #列印拟合多項式
print("-"*40)
print('2019年預測值:',p1(2019)) #列印預測值
運作結果:
利用三次多項式預測的資料與公布的結果确實很相近。
我們繼續搞事情。
将今年2019年的2684億導入,預測一下後面三年:
按照網上的陰謀論,後面幾年的資料應該如此。
碎碎談:
看了網絡上的好幾篇文章,衆說紛纭。
作為一個技術er,就不去對此事做評價了。
隻寫一些其中跟我們相關的資料知識就夠了。
網絡大衆對此事的看法到底如何?
不妨看下騰訊科技發起的一個投票。
大衆的看法就像這個投票。