先把来源写上

来源:贪心学院,https://www.zhihu.com/people/tan-xin-xue-yuan/activities

这次回归

之前写过关于平安股票的,竟然没想到是同一个案例

平安股票分析

说明下这个模型是没用的

import numpy as np # 数学计算
import pandas as pd # 数据处理, 读取 CSV 文件 (e.g. pd.read_csv)
import matplotlib.pyplot as plt
from datetime import datetime as dt
# 你可以使用如下的方法下载某一个公司的股票交易历史
# 000001 为平安银行
# 如果你还没有安装, 可以使用 pip install tushare 安装tushare python包
# import tushare as ts
# df = ts.get_hist_data('000001')
# print(df)
# df.to_csv('000001.csv')
df = pd.read_csv('./000001.csv')
print(np.shape(df))
df.head()
(611, 14)
date open high close low volume price_change p_change ma5 ma10 ma20 v_ma5 v_ma10 v_ma20
0 2019-05-30 12.32 12.38 12.22 12.11 646284.62 -0.18 -1.45 12.366 12.390 12.579 747470.29 739308.42 953969.39
1 2019-05-29 12.36 12.59 12.40 12.26 666411.50 -0.09 -0.72 12.380 12.453 12.673 751584.45 738170.10 973189.95
2 2019-05-28 12.31 12.55 12.49 12.26 880703.12 0.12 0.97 12.380 12.505 12.742 719548.29 781927.80 990340.43
3 2019-05-27 12.21 12.42 12.37 11.93 1048426.00 0.02 0.16 12.394 12.505 12.824 689649.77 812117.30 1001879.10
4 2019-05-24 12.35 12.45 12.35 12.31 495526.19 0.06 0.49 12.396 12.498 12.928 637251.61 781466.47 1046943.98

股票数据的特征

  • date:日期
  • open:开盘价
  • high:最高价
  • close:收盘价
  • low:最低价
  • volume:成交量
  • price_change:价格变动
  • p_change:涨跌幅
  • ma5:5日均价
  • ma10:10日均价
  • ma20:20日均价
  • v_ma5:5日均量
  • v_ma10:10日均量
  • v_ma20:20日均量
# 将每一个数据的键值的类型从字符串转为日期df['date'] = pd.to_datetime(df['date'])
df = df.set_index('date')
# 按照时间升序排列
df.sort_values(by=['date'], inplace=True, ascending=True)
df.tail()
open high close low volume price_change p_change ma5 ma10 ma20 v_ma5 v_ma10 v_ma20
date
2019-05-24 12.35 12.45 12.35 12.31 495526.19 0.06 0.49 12.396 12.498 12.928 637251.61 781466.47 1046943.98
2019-05-27 12.21 12.42 12.37 11.93 1048426.00 0.02 0.16 12.394 12.505 12.824 689649.77 812117.30 1001879.10
2019-05-28 12.31 12.55 12.49 12.26 880703.12 0.12 0.97 12.380 12.505 12.742 719548.29 781927.80 990340.43
2019-05-29 12.36 12.59 12.40 12.26 666411.50 -0.09 -0.72 12.380 12.453 12.673 751584.45 738170.10 973189.95
2019-05-30 12.32 12.38 12.22 12.11 646284.62 -0.18 -1.45 12.366 12.390 12.579 747470.29 739308.42 953969.39
# 检测是否有缺失数据 NaNsdf.dropna(axis=0 , inplace=True)
df.isna().sum()
open            0
high            0
close           0
low             0
volume          0
price_change    0
p_change        0
ma5             0
ma10            0
ma20            0
v_ma5           0
v_ma10          0
v_ma20          0
dtype: int64

K线图

Min_date = df.index.min()
Max_date = df.index.max()
print ("First date is",Min_date)
print ("Last date is",Max_date)
print (Max_date - Min_date)
First date is 2016-11-29 00:00:00
Last date is 2019-05-30 00:00:00
912 days 00:00:00

plotly画图

from plotly import tools
from plotly.graph_objs import *
from plotly.offline import init_notebook_mode, iplot, iplot_mpl
init_notebook_mode()
import plotly.plotly as py
import plotly.graph_objs as gotrace = go.Ohlc(x=df.index, open=df['open'], high=df['high'], low=df['low'], close=df['close'])
data = [trace]
iplot(data, filename='simple_ohlc')

from sklearn.linear_model import LinearRegression
from sklearn import preprocessing
# 创建新的列, 包含预测值, 根据当前的数据预测5天以后的收盘价
num = 5 # 预测5天后的情况
df['label'] = df['close'].shift(-num) # 预测值print(df.shape)
df.head(6)

# 丢弃 'label', 'price_change', 'p_change', 不需要它们做预测
Data = df.drop(['label', 'price_change', 'p_change'],axis=1)
Data.tail()

X = Data.values
# 0 到 1
X = preprocessing.scale(X)
# 后面5个不要
X = X[:-num]df.dropna(inplace=True)
Target = df.label
y = Target.valuesprint(np.shape(X), np.shape(y))
# (606, 11) (606,)
# 将数据分为训练数据和测试数据
X_train, y_train = X[0:550, :], y[0:550]
X_test, y_test = X[550:, -51:], y[550:606]
print(X_train.shape)
print(y_train.shape)
print(X_test.shape)
print(y_test.shape)(550, 11)
(550,)
(56, 11)
(56,)
lr = LinearRegression()
lr.fit(X_train, y_train)
lr.score(X_test, y_test) # 使用绝对系数 R^2 评估模型# 0.04930040648385525非常的垃圾,所以个人认为毫无意义

打广告,欢迎关注毛利学python

贪心科技机器学习训练营(四)相关推荐

  1. 近期活动盘点:高级机器学习训练营、基于神经网络的代码自动生成” “开放学术图谱”、西山金融科技产业创新论坛...

    想知道近期有什么最新活动?大数点为你整理的近期活动信息在此: 清华唐杰教授授课 高级机器学习训练营 我们都知道随着数据复杂度的不断提高,经典机器学习算法已经很难满足实际需求,当前,针对复杂数据对象.复 ...

  2. 机器学习训练营-基于XGBoost的分类预测学习笔记

    文章目录 前言 一.学习知识点概要 二.学习内容 1 XGBoost的应用及优缺点 1.1 XGBoost的应用 1.2 XGBoost的优缺点 2 基于天气数据集的XGBoost分类实战 2.1 目 ...

  3. 重修-龙珠计划机器学习训练营task3-LightGBM学习笔记

    文章标题:龙珠计划机器学习训练营task3-LightGBM学习笔记 一.学习知识点概要 LightGBM是2017年由微软推出的可扩展机器学习系统,是微软旗下DMKT的一个开源项目,由2014年首届 ...

  4. 机器学习训练营--快来一起挖掘幸福感吧

    文章目录 前言 一.赛题理解 1.1 实验环境 1.2 背景介绍 1.3 数据信息 1.4 评价指标 二.探索性数据分析(EDA)& 特征工程 2.1 为什么要做探索性数据分析 2.2 探索性 ...

  5. 龙珠机器学习训练营-LightGBM笔记

    本学习笔记为阿里云天池龙珠计划机器学习训练营的学习内容,学习链接为:添加链接描述 1.学习知识点概要 了解 LightGBM 的参数与相关知识: 掌握 LightGBM 的Python调用并将其运用到 ...

  6. 龙珠机器学习训练营机器学习基础知识笔记

    本学习笔记为阿里云天池龙珠计划机器学习训练营的学习内容,学习链接为:添加链接描述 学习知识点概要 1.了解 逻辑回归 的理论 2.掌握 逻辑回归 的 sklearn 函数调用使用并将其运用到鸢尾花数据 ...

  7. 重修-龙珠计划机器学习训练营task1-part2学习笔记

    文章标题:龙珠计划机器学习训练营task1-part2学习笔记 一.学习知识点概要 利用鸢花数据(iris)进行逻辑回归方法的训练,该数据集一共包含5个变量,其中4个特征变量,1个目标分类变量.共有1 ...

  8. Coursera公开课笔记: 斯坦福大学机器学习第四课“多变量线性回归(Linear Regression with Multiple Variables)”

    Coursera公开课笔记: 斯坦福大学机器学习第四课"多变量线性回归(Linear Regression with Multiple Variables)" 斯坦福大学机器学习第 ...

  9. 招募 | 贪心科技招募CV、语音分析、联邦学习课程讲师(在线+兼职)

    贪心科技作为中国领先的AI人才战略服务商,面向企业和个人提供以"内容+技术+平台"为核心的人才服务解决方案. 面向企业,我们提供以"解决行业AI业务问题"为目标 ...

  10. 斯坦福大学机器学习第四课“逻辑回归(Logistic Regression)”

    斯坦福大学机器学习第四课"逻辑回归(Logistic Regression)" 本次课程主要包括7部分: 1) Classification(分类) 2) Hypothesis R ...

最新文章

  1. vb.net 当前计算机用户,用VB写的一个组件,实现添加系统用户,并添加到指定组-.NET教程,VB.Net语言...
  2. 欢乐拼图发红包微信小程序开发过程实录成品展示
  3. ITK:向转换工厂注册非默认转换
  4. [ASP.NET AJAX]类似.NET框架的JavaScript扩展
  5. ucos ii 源代码中文注释详解 : OS_TIME.C
  6. 鸟哥的私房菜-基础篇学习-文件与目录管理-2-1
  7. DataStream API及源算子
  8. Vue学习笔记----基础
  9. 使用基于轮询的SQL数据缓存依赖
  10. java applet实例_java applet 一个简单的例子(applet+html)
  11. 我的自定义Spring框架 | Spring核心功能结构
  12. win10系统计算机如何分盘,win10怎么进行分盘_win10电脑如何合理分盘
  13. html代码中font是什么意思,HTML元素font标签的使用方法及作用
  14. 用平均的方法去除噪声
  15. 分享:Babel7的配置
  16. deflate树与deflate编码
  17. 论文解读:《多层肽 - 蛋白质相互作用预测的深度学习框架》
  18. 连接Oracle时报错ora-01034与ORA-27101
  19. Macbook terminal: No application knows how to open问题
  20. 糖尿病遗传风险检测挑战赛

热门文章

  1. 苹果电脑计算机找不到打印机,在苹果电脑上连接打印机可以这样操作
  2. Ant Design Vue 表格行内编辑!!!
  3. mysql 正则表达式 包含中文_sql 查询字段是中文/英文/数字 正则表达式
  4. 算法导论 9.1-1 “给出算法,在给定的比较次数(n+向上取整(lgn)-2)内,一定能找出第二小的元素。提示:也找出最小元素。”...
  5. Shopee虾皮电商平台考试题附答案
  6. linux 怎么批量删除文件,linux下批量删除文件
  7. MBP清除NVRAM和PRAM
  8. 正则表达式系列 (一)
  9. 数据分析中常见的10种数据编码方式
  10. OFDM信号的产生与解调