二十四、数据挖掘时序模式
生活随笔
收集整理的這篇文章主要介紹了
二十四、数据挖掘时序模式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
時序模式
1. 時序模式
1.1 問題引入
- 下個月的商品銷量、銷售額或庫存量是多少?
- 明天廣州市的最高用電負荷是多少?
序列模式的概念 - 時序模式:描述基于時間或其他序列的經常發(fā)生的規(guī)律或趨勢,并對其建模。
- 序列模式將關聯和時間序列模式結合起來,重點考慮數據之間維度上的關聯性。
1.2 序列模式的內容
- 時間序列分析
- 序列發(fā)現
- 時間序列的組合成分
- 時間序列的組合模型
2. 時間序列分析
2.1 序列分析的基本內容
用已有的數據序列預測未來。在時間序列分析中,數據的屬性值隨著時間不斷變化的。回歸不強調數據的先后順序,而時間序列要考慮日歷的影響,如節(jié)假日等。
3. 序列發(fā)現
3.1 序列分析的定義
序列分析指的是用于確定數據之間與時間相關的序列模式。這些模式與在數據(或者事件)中發(fā)現的相關的關聯規(guī)則很相似,只是這些序列是與時間相關的。
3 時間序列組合成分
3.1 時間序列變化的影響因素
- 時間序列的變化主要受到長期趨勢、季節(jié)變動、周期變動和不規(guī)則變動這四個因素的因素
- 長期趨勢因素(T):反映了經濟現象在一個較長時間內的發(fā)展方向,它可以在一個相當長的時間內表現為一種近似直線的持續(xù)向上或持續(xù)向下或平穩(wěn)的趨勢。
- 季節(jié)變動因素(S)是經濟現象首季節(jié)變動影響所形成的一種長度和幅度固定的周期波動。
- 周期變動因素(C)也稱循環(huán)變動因素,它是受各種經濟因素影響形成的上下起伏不定的波動。
- 不規(guī)則變動因素(I)不規(guī)則變動又稱隨機變動,它是受各種偶然因素所形成的不規(guī)則變動。
4 常見的時序算法
4.1 常見的序列分析及使用范圍
5 時序算法實戰(zhàn)案例
5.1 股票收益率回歸分析
- 自變量:個股的收益率
- 應變量:大盤的收益率
- 通過OLS探索是否存在關系
5.2 算法的原理
使用股票數據,并利用最小二乘法擬合股票數據的收益情況,算法采用線性回歸的方式
5.3 資源
工具庫
matplotlib tushare numpy statsmodels完整代碼
# -*- coding: utf-8 -*-import matplotlib.pylab as plt from matplotlib.pylab import style import tushare as ts import numpy as np import statsmodels.api as smstyle.use('ggplot') # 設置圖片顯示的主題樣式# 解決matplotlib顯示中文問題 plt.rcParams['font.sans-serif'] = ['SimHei'] # 指定默認字體 plt.rcParams['axes.unicode_minus'] = False # 解決保存圖像是負號'-'顯示為方塊的問題def get_log_return(price_data):"""計算對數收益率參數===price_data: Series類型價格/指數數據返回===log_return: 對數收益率"""log_return = np.log(price_data / price_data.shift(1))return log_returndef run_main():"""主函數"""# 2016年上證指數記錄# sh_data = ts.get_k_data(code='sh', start='2016-01-01', end='2017-01-01')sh_data = ts.get_k_data(code='hs300', start='2016-01-01', end='2017-01-01')sh_data['log_return'] = get_log_return(sh_data['close'])# 2016年某支股票記錄stock_data = ts.get_k_data(code='sz', start='2016-01-01', end='2017-01-01')# stock_data = ts.get_k_data(code='300003', start='2016-01-01', end='2017-01-01')stock_data['log_return'] = get_log_return(stock_data['close'])y = sh_data['log_return'].dropna().valuesx = stock_data['log_return'].dropna().valuesx_cons = sm.add_constant(x)res_ols = sm.OLS(y, x_cons).fit()print(res_ols.summary())fig, ax = plt.subplots(figsize=(8, 6))ax.plot(x, y, 'bo', label="data")ax.plot(x, res_ols.fittedvalues, 'r--', label="OLS")ax.legend(loc='best')plt.show()if __name__ == '__main__':run_main()總結
以上是生活随笔為你收集整理的二十四、数据挖掘时序模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 二十三、聚类算法
- 下一篇: 二十五、数据挖掘之离群点检测