样本:

代码:有几处与教程不同,自行修改

import pandas as pd
import numpy as np
from sklearn import svm
from sklearn import model_selection #此处与教程不同,模块更改 #1.读取数据,此处不添加 index_col=0 因为会没有最左边的0,1,2,3那一列,导致后续ix换col索引出现问题
data = pd.read_csv('D:\python_source\Machine_study\mooc_data\classification\stock/000777.csv', encoding='gbk', parse_dates=[0])
data.sort_index(0, ascending=True, inplace=True) #按索引列(第一列,日期)升排序 #2.数据预处理
#选取5列数据作为特征:收盘价,最高价,最低价,开盘价,成交量
dayfeature = 150 #选取150天的数据量
featurenum = 5 * dayfeature
'''
data.shape[0] - day.feature意思为要用150天数据做训练,对于条目为200条的数据,只有50条数据
是有前150天的数据来训练的,使用训练集的大小就是200-150,对于每一条数据,它阿特征是前150天的所有特征数据,即150*5,
+1是将当天的开盘价引入作为一条特征数据
'''
x = np.zeros((data.shape[0] - dayfeature, featurenum + 1)) #记录150天的5个特征值
y = np.zeros((data.shape[0]-dayfeature)) #记录涨或者跌 for i in range(0, data.shape[0]-dayfeature):
#将数据中的收盘价,最高价1,开盘价,成交量存入 x数组中
x[i, 0:featurenum] = np.array(data[i:i+dayfeature]\
[[u'收盘价', u'最高价', u'最低价',u'开盘价', u'成交'
u'量']]).reshape((1, featurenum))
x[i, featurenum] = data.loc[i+dayfeature]['开盘价'] #最后一列记录当日开盘价 此处ix已被弃用
#1代表涨,0代表跌
for i in range(0, data.shape[0]-dayfeature):
if data.loc[i+dayfeature]['收盘价']>=data.loc[i+dayfeature]['开盘价']:
y[i] = 1
else:
y[i] = 0 #3.创建SVM并进行交叉验证
clf = svm.SVC(kernel='rbf', gamma='scale') #调用函数,参数默认为rbf,其他:linear,poly,sigmoid
result = []
for i in range(5):
x_train, x_test, y_train, y_test = model_selection.train_test_split(x, y, test_size=0.2)
#x和y的验证集和测试集,切分80-20%的测试集
clf.fit(x_train, y_train)
#训练数据进行训练
result.append(np.mean(y_test == clf.predict((x_test))))
#预测数据和测试集的验证数据进行比对
print("svm classifier accuacy:")
print(result)

结果:

2019-08-02【机器学习】有监督学习之分类 SVC算法 实例(上证指数跌涨预测)的更多相关文章

  1. 吴裕雄 python 机器学习——支持向量机SVM非线性分类SVC模型

    import numpy as np import matplotlib.pyplot as plt from sklearn import datasets, linear_model,svm fr ...

  2. 2019.08.02 云从科技C++后台开发

    公司坐标:重庆 岗位:C++后台开发 面试时长:45分钟 主要问题记录: (1)手写代码 冒泡算法的实现: /**   * 冒泡排序:C++   *   * @author skywang   * @ ...

  3. 【纪中集训】2019.08.02【NOIP提高组】模拟 A 组TJ

    \(\newcommand{\RNum}[1]{\uppercase\expandafter{\romannumeral #1\relax}}\) T1 一道可以暴力撵标算的题-- Descripti ...

  4. 2019-07-25【机器学习】无监督学习之聚类 K-Means算法实例 (1999年中国居民消费城市分类)

    样本 北京,2959.19,730.79,749.41,513.34,467.87,1141.82,478.42,457.64天津,2459.77,495.47,697.33,302.87,284.1 ...

  5. 机器学习--最邻近规则分类KNN算法

    理论学习: 3. 算法详述        3.1 步骤:      为了判断未知实例的类别,以所有已知类别的实例作为参照      选择参数K      计算未知实例与所有已知实例的距离      选 ...

  6. 2019-07-31【机器学习】无监督学习之聚类 K-Means算法实例 (图像分割)

    样本: 代码: import numpy as np import PIL.Image as image from sklearn.cluster import KMeans def loadData ...

  7. 2019-07-31【机器学习】无监督学习之降维PCA算法实例 (鸢尾花)

    样本 代码: import matplotlib.pyplot as plt from sklearn.decomposition import PCA from sklearn.datasets i ...

  8. 【Todo】【转载】Spark学习 & 机器学习(实战部分)-监督学习、分类与回归

    理论原理部分可以看这一篇:http://www.cnblogs.com/charlesblc/p/6109551.html 这里是实战部分.参考了 http://www.cnblogs.com/shi ...

  9. 02机器学习实战之K近邻算法

    第2章 k-近邻算法 KNN 概述 k-近邻(kNN, k-NearestNeighbor)算法是一种基本分类与回归方法,我们这里只讨论分类问题中的 k-近邻算法. 一句话总结:近朱者赤近墨者黑! k ...

随机推荐

  1. springcloud基础-eureka(注册中心)案例

    一.新建项目,取名eureka-server pom.xml <?xml version="1.0" encoding="UTF-8"?> < ...

  2. iframe框架及优缺点

    iframe框架及优缺点 HTML5不再支持使用frame,关于frame与iframe的区别,可以参阅 iframe与frame的区别 基本使用 src:规定在iframe中显示的文档的URL. f ...

  3. rbac权限(2)

    models.py from django.db import models class User(models.Model): name=models.CharField(max_length=32 ...

  4. hdoj 1829 A bug's life 种类并查集

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1829 并查集的一个应用,就是检测是否存在矛盾,就是两个不该相交的集合有了交集.本题就是这样,一种虫子有 ...

  5. 基于树莓派与YOLOv3模型的人体目标检测小车(一)

    项目介绍: 本科毕业选的深度学习的毕设,一开始只是学习了一下YOLOv3模型, 按照作者的指示在官网上下载下来权重,配好环境跑出来Demo,后来想着只是跑模型会不会太单薄,于是想了能不能做出来个比较实 ...

  6. ArrayList的传值问题

    ArrayList是一个对象类型,记录一下遇到的传值问题 假设两个ArrayList类型的值a和b,a有值,b无值,想把a的值全部复制给b. 如果使用 b = a; 进行赋值,会将a的地址赋值给b,当 ...

  7. 10行Python代码计算汽车数量

    当你还是个孩子坐车旅行的时候,你玩过数经过的汽车的数目的游戏吗? 在这篇文章中,我将教你如何使用10行Python代码构建自己的汽车计数程序. 以下是环境及相应的版本库: Python版本 3.6.9 ...

  8. 【干货】史上最全的Tensorflow学习资源汇总

    欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! 作者:AI小昕 在之前的Tensorflow系列文章中,我们教大家 ...

  9. 一个完整的机器学习项目在Python中演练(三)

    大家往往会选择一本数据科学相关书籍或者完成一门在线课程来学习和掌握机器学习.但是,实际情况往往是,学完之后反而并不清楚这些技术怎样才能被用在实际的项目流程中.就像你的脑海中已经有了一块块"拼 ...

  10. 使用Keras进行深度学习:(五)RNN和双向RNN讲解及实践

    欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! 笔者:Ray 介绍 通过对前面文章的学习,对深度神经网络(DNN) ...