- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
通过机器学习的线性回归算法预测股票⾛势(⽤Python实现)
在本⼈的新书⾥,将通过股票案例讲述Python知识点,让⼤家在学习Python的同时还能掌握相关的股票知识,所谓⼀举两得。这⾥给出
以线性回归算法预测股票的案例,以此讲述通过Python的sklearn库实现线性回归预测的技巧。
本⽂先讲以波⼠顿房价数据为例,讲述线性回归预测模型的搭建⽅式,随后将再这个基础上,讲述以线性预测模型预测股票的实现代码。
本博⽂是从本⼈的新书⾥摘取的,新书预计今年年底前出版,敬请⼤家关注。
正⽂开始(长⽂预警)
1波⼠顿房价数据分析
安装好Python的Sklearn库后,在安装包下的路径中就能看到描述波⼠顿房价的csv⽂件,具体路径是“python安装路径\Lib\site-
packages\sklearn\datasets\data”,在这个⽬录中还包含了Sklearn库会⽤到的其他数据⽂件,本节⽤到的是包含在
boston_house_prices.csv⽂件中的波⼠顿房价信息。打开这个⽂件,可以看到如图所⽰的数据。
第 1⾏的506表⽰该⽂件中包含506条样本数据,即有506条房价数据,⽽ 13表⽰有 13个影响房价的特征值,即从A列到M列这13列的
特征值数据会影响第N列MEDV(即房价值),在表 13.1中列出了部分列的英⽂标题及其含义。
波⼠顿房价⽂件部分中英⽂标题⼀览表
标题名 中⽂含义 标题名 中⽂含义
CRIM 城镇⼈均犯罪率 DIS 到波⼠顿五个中⼼区域的加权距离
ZN 住宅⽤地超过某数值的⽐例 RAD 辐射性公路的接近指数
INDUS 城镇⾮零售商⽤⼟地的⽐例 TAX 每 10000 美元的全值财产税率
查理斯河相关变量,如边界是河流则为
CHAS PTRATIO 城镇师⽣⽐例
1,否则为0
NOX ⼀氧化氮浓度 MEDV 是 ⾃住房的平均房价
RM 住宅平均房间数
AGE 1940年之前建成的⾃⽤房屋⽐例
从表中可以看到,波⼠顿房价的数值 (即MEDV)和诸如 “住宅⽤地超过某数值的⽐例”等 13个特征值有关。⽽线性回归要解决的问题
是,量化地找出这些特征值和⽬标值 (即房价)的线性关系,即找出如下的k1到k13系数的数值和b这个常量值。
MEDV = k1*CRIM + k2*ZN + … + k13*LITAT + b
上述参数有 13个,为了简化问题,先计算1个特征值 (DIS)与房价(MEDV)的关系,然后在此基础上讲述13个特征值与房价关系的
计算⽅式。
如果只有1个特征值DIS,它与房价的线性关系表达式如下所⽰。在计算出k1和b的值以后,如果再输⼊对应DIS值,即可据此计算MEDV
的值,以此实现线性回归的预测效果。
MEDV = k1*DIS + b
2以波⼠顿房价数据为案例,搭建含 ⼀个特征值 的线性预测模型
在下 ⾯ 的OneParamLR.py范例 程序 中,通过调 ⽤Sklearn库中的⽅法,以 训练加 预测的⽅式, 推 算出⼀个 特征值 (DIS)
(MEDV,即房价)的线性关 系 。
1 # !/usr/bin/env python
2 # coding=utf-8
3 import numpy as np
4 import pandas as pd
5 import matplotlib.pyplot as plt
6 from sklearn import datasets
7 from sklearn.linear_model import LinearRegression
在上述代码中导⼊了必要的库,其中第6⾏和第7⾏⽤于导⼊sklearn相关库。
8 # 从⽂件中读数据,并转换成DataFrame格式
9 dataset=datasets.load_boston()
文档评论(0)