python_data_analysis9

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Fri Nov  3 13:10:35 2021

@author: lee
"""

import pickle

from numpy.random import shuffle

import pandas as pd
from sklearn import metrics, svm
"""
programmer_1-->svm支持向量机
"""


def programmer_1():

    inputfile = "data/moment.csv"
    outputfile1 = "tmp/cm_train.xls"
    outputfile2 = "tmp/cm_test.xls"
    data = pd.read_csv(inputfile, encoding="gbk")
    data = data.as_matrix()

    # 随即抽取训练集和验证集--8:2
    shuffle(data)
    data_train = data[:int(0.8 * len(data)), :]
    data_test = data[int(0.8 * len(data)):, :]
    # 训练集/验证集的训练数据和结果数据的抽取
    x_train = data_train[:, 2:] * 30
    y_train = data_train[:, 0].astype(int)
    x_test = data_test[:, 2:] * 30
    y_test = data_test[:, 0].astype(int)
    # 训练支持向量机的SVC
    model = svm.SVC()
    model.fit(x_train, y_train)

    # 保存模型
    pickle.dump(model, open("tmp/svm.model", "wb"))
    # 混淆矩阵,评估模型的准确性
    cm_train = metrics.confusion_matrix(y_train, model.predict(x_train))
    cm_test = metrics.confusion_matrix(y_test, model.predict(x_test))
    print(cm_train, '\n', cm_test)
    pd.DataFrame(
        cm_train, index=list(range(1, 6)),
        columns=list(range(1, 6))).to_excel(outputfile1)
    pd.DataFrame(
        cm_test, index=list(range(1, 6)),
        columns=list(range(1, 6))).to_excel(outputfile2)


if __name__ == "__main__":
    programmer_1()

#携程暑期实习#
Python 文章被收录于专栏

Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言,随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发

全部评论
羡慕你们整pyhon的
点赞 回复 分享
发布于 2022-08-03 15:48

相关推荐

10-13 13:42
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务