一. 数据集下载地址
letter-recognition.data
下载.data文件就好,数据集部分信息和数据集属性如下图

二. 用pd.read_csv读取数据集,可以看到它有20000个字母样本,每个字母又有16个特征

三. 遇到的一些坑
train_test_split函数的基本用法是train_test_split(X,y,test_size, random_state),X是待划分的样本特征,在上面的图片里就是那16列数字特征;y是待划分的样本标签,在上面的图片里就是字母那列;test_size若在0~1之间,就是测试集占总样本数目之比;我这里设置的是train_size=0.8,表示训练集占总样本的80%,如果不设置默认是75%;
rondom_state就是设置随机数种子,如果是零,那么两次运行时划分的训练集和测试集是不同的,如果是一个正整数,那么两次运行时划分的训练集和测试集是相同的;正整数的选取笔者认为随机选取就好,比如4、35、77、124等等。选取一个正整数只是分配一个随机数起点,只对训练集和测试集的划分有影响,对模型的评价只有微乎其微的影响。
比如我设置random_state=77,前一百个预测结果是这样的:
我再设置random_state=123,前一百个预测结果是这样的:

可以看到,不同的random_state值影响了训练集和测试集的划分,对模型评价几乎没有影响。此外模型的测试集不同,预测结果不同就是显而易见的。总之就是相同的random_state值下,两次运行的结果是一样的。而两次不同的random_state值,只是训练集和测试集不同。

四. 运行结果

可以看到对测试集的预测结果返回的是一个ndarray属性的列表,长度为4000。评分是用了决定系数R²对回归模型进行评价,得分0.777不算低。

五. 完整代码

from sklearn.linear_model import LogisticRegression
import pandas as pd
from sklearn.model_selection import train_test_splitpath='E:/Python_file/zuoye/letter-recognition.data' #数据集路径
Cname = ['字母','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16'] #设置列名称
data=pd.read_csv(path,header=None,names=Cname)
data.index.name='index'     #datadrame结构的行索引与列索引名字
data.columns.name='columns'
print(data)X=data[data.columns[1:17]]  #提取特征值,不需要第一列的字母值
x_train,x_test,y_train,y_test=train_test_split(X,data["字母"],train_size=0.8,random_state=77)
#设置最大迭代次数为4000,默认为1000.不更改会出现警告提示
lr=LogisticRegression(max_iter=4000)
clm=lr.fit(x_train,y_train)  #输入训练集
print('对测试集的预测结果:')
#输出预测结果、预测结果的结构类型及尺寸
print(clm.predict(x_test),type(clm.predict(x_test)),clm.predict(x_test).shape)
#
print('模型评分:'+ str(clm.score(x_test,y_test))) #用决定系数来打分

对模型打分score方法感兴趣的可以看这篇
Scikit-learn中,性能评估所用的score到底是个什么意思

Python多项逻辑回归用LogisticRegression识别英文字母数据集letter-recognition.data相关推荐

  1. 机器学习算法与Python实践之逻辑回归(Logistic Regression)

    转载自:http://blog.csdn.net/zouxy09/article/details/20319673 机器学习算法与Python实践这个系列主要是参考<机器学习实战>这本书. ...

  2. 用python做逻辑回归_用Python来实现逻辑回归

    1,什么是逻辑回归(Logistic Regression) 逻辑回归用于二分分类问题,二分分类问题的标签值只有两个,比如 对于一首歌喜欢或者不喜欢:对于一件商品,喜欢或者不喜欢:对于某个考生,考试成 ...

  3. softmax分类(多项逻辑回归)的Pyhon实现及其与SVM的比较

    GREAT THANKS TO:http://cs231n.github.io/linear-classify/#softmax 1..softmax分类 SVM和softmax是两大常用的分类方法, ...

  4. R语言多项逻辑回归-因变量是无序多分类

    因变量是无序多分类资料(>2)时,可使用多分类逻辑回归(multinomial logistic regression). 使用课本例16-5的数据,课本电子版及数据已上传到QQ群,自行下载即可 ...

  5. 逻辑回归和多项逻辑回归

    文章目录 一.逻辑回归 逻辑回归模型 极大似然估计法求w 损失函数 梯度下降求解w 二.多项逻辑回归 三.问题 1.逻辑回归如何处理多标签问题? 2.为什么不用平方误差(MSE)作为Logistic回 ...

  6. Python练习——输出10个不重复的英文字母

    Python练习--输出10个不重复的英文字母 随机输入一个字符串,把最左边的10个不重复的英文字母(不区分大小写)挑选出来. 如没有10个英文字母,显示信息"not found" ...

  7. Python基于逻辑回归的糖尿病视网膜病变检测(数据集messidor_features.arff)

    一. 引言 本项目基于逻辑回归理论,运用Python语言对数据集messidor_features.arff进行分析,实现对糖尿病视网膜病变的检测.糖尿病视网膜病变(DR)是糖尿病最常见的微血管并发症 ...

  8. 逻辑回归分类python实例_Python逻辑回归原理及实际案例应用

    前言 目录 1. 逻辑回归 2. 优缺点及优化问题 3. 实际案例应用 4. 总结 正文 在前面所介绍的线性回归, 岭回归和Lasso回归这三种回归模型中, 其输出变量均为连续型, 比如常见的线性回归 ...

  9. Python机器学习:逻辑回归007scikit-learn中的逻辑回归

    Scikt-learn中使用的正则化 import numpy as np import matplotlib.pyplot as plt np.random.seed(666) #生成数据 np.r ...

  10. Python+sklearn使用逻辑回归算法预测期末考试能否及格

    封面图片:<Python程序设计实验指导书>,董付国编著,清华大学出版社 ================= 虽然名字中带有"回归"二字,但实际上逻辑回归是一个用于分类 ...

最新文章

  1. 线程池 c linux 编程,关于c++:linux-c编程之高效线程池如何实现无琐化
  2. NYOJ 716 River Crossing(动态规划)
  3. 浅析“字典--NSDirctionary”理论
  4. 宫崎骏动画里的新垣结衣见过没?简直美呆!
  5. 支付宝 统一支付 php,支付宝APP支付 统一下单 php服务端 tp5
  6. java打乱一组正序数字,Leetcode︱4.Median of Two Sorted Arrays寻找两个正序数组的中位数.java...
  7. Redis 面试题补充与汇总
  8. 阿姆斯特丹大学博士招生,月薪2.3K-3K 欧,QUVA Lab 计算机视觉与机器学习方向...
  9. rup 裁剪_裁剪师是什么意思
  10. Linux C/C++UDP通信实现
  11. 通过IP地址进行精准定位
  12. codeforce 1260
  13. WP下载,WP源码下载,WP模板主题下载
  14. 民宿管理系统课程设计_民宿室内设计毕业设计
  15. AI智能语音电销机器人能高效取代繁杂的电话工作
  16. Dumb-Init进程信号处理
  17. 工信部发文启动2019网络安全防护赛,是时候对短信验证码说再见了
  18. 计算机系统基础书籍读后感,计算机系统基础试题.doc
  19. Spring框架中的单例Bean是线程安全的么?
  20. 使用Guardium大数据智能解决方案释放Guardium数据的价值

热门文章

  1. 智己让上汽的高端梦第一次落地
  2. u盘中病毒文件夹变成.exe解决
  3. HEVC之CU、PU、TU分析
  4. cc攻击的原理和处理方式
  5. 淘宝x-sign签名算法
  6. 免费版企业级杀毒软件mcafee使用报告。
  7. C语言学习(3)VScode配置C语言环境(简洁易懂版)
  8. matlab绘图空间曲线,matlab空间曲线绘图
  9. matlab在故障诊断中的应用,Matlab在发动机故障诊断中的应用研究
  10. 米兔机器人自主编程_可编程米兔机器人 让成年人回归童心的玩具