Scikit-learn内置的数据集

数据集是我们学习和研究机器学习不可或缺的基础,Scikit-learn库内置了丰富的数据集资源,非常适合初学者用来练习和验证机器学习算法的效果。

一、鸢尾花数据集

鸢尾花数据集(Iris Dataset)是机器学习领域中最著名的数据集之一,常被用于分类问题的演示和算法的测试。

数据集概览:

  • 样本数量:150个样本

  • 特征数量:4个特征,花瓣长度(Sepal Length)、花瓣宽度(Sepal Width)、花萼长度(Petal Length)、花萼宽度(Petal Width)

  • 标签数量:3个标签类别,鸢尾草(Iris Setosa)、蝴蝶花(Iris Versicolour)、维吉尼亚鸢尾(Iris Virginica)

数据集的应用:

  • 作为机器学习入门教学的实例数据集。

  • 测试分类算法的性能,如K近邻(KNN)、支持向量机(SVM)、决策树、随机森林等。

  • 进行数据可视化和降维的练习,例如使用散点图矩阵展示特征之间的关系,或使用PCA(主成分分析)进行数据降维。

在Scikit-learn中加载鸢尾花数据集的代码如下:

from sklearn.datasets import load_iris# 加载鸢尾花数据集
iris = load_iris()# 查看特征名称
print("特征名称:", iris.feature_names)# 查看类别名称
print("标签名称:", iris.target_names)# 显示数据集的形状
print("\n特征集形状:", iris.data.shape)# 显示目标数据的形状
print("标签集形状:", iris.target.shape)# 查看数据特征
print("\n前几个特征数据:\n", iris.data[:5])# 查看目标标签
print("前几个标签数据:\n", iris.target[:5])
  • 输出结果:

图片

二、手写数字数据集

手写数字数据集(Digits Dataset)是一个在机器学习和计算机视觉领域中非常流行的数据集,特别是在进行数字识别任务时。这个数据集包含了1797个8x8像素的灰度手写数字图像,每个图像都是一个介于0到9之间的数字。

数据集概览:

  • 样本数量:1797个样本。

  • 图像大小:8x8像素。

  • 标签数量:10个(0到9的每个数字)。

  • 颜色空间:灰度图像,即每个像素点只有一个灰度值。

数据集的应用:

  • 分类任务:手写数字数据集通常用于监督学习中的分类任务,特别是多类分类。

  • 数据可视化:由于图像大小较小,可以用于展示数据的分布和形态。

  • 模型训练和测试:用于训练和测试不同的图像识别和分类算法。

在Scikit-learn中加载手写数字数据集的代码如下:

from sklearn.datasets import load_digits# 加载手写数字数据集
digits = load_digits()# 获取特征数据和目标数据
X_digits = digits.data
y_digits = digits.target# 特征数据是8x8的像素值数组
# 目标数据是对应的数字标签,从0到9# 显示特征名称
print("特征名称:", digits.feature_names)# 显示目标名称
print("标签名称:", digits.target_names)# 显示数据集的形状
print("\n特征数据形状:", X_digits.shape)# 显示目标数据的形状
print("标签数据形状:", y_digits.shape)print("\n前几个样本图像:")# 显示前几个图像
import matplotlib.pyplot as pltfig, axes = plt.subplots(1, 10, figsize=(10, 3))
for i, ax in enumerate(axes):ax.imshow(X_digits[i].reshape(8, 8), cmap=plt.cm.binary, interpolation='nearest')ax.text(0.5, 0.5, str(y_digits[i]), color='red', fontweight='bold',verticalalignment='center', horizontalalignment='center')ax.axis('off')
plt.show()
  • 输出结果:

图片

三、葡萄酒数据集

葡萄酒数据集(Wine Dataset)是另一个在机器学习中常用的数据集,特别是在进行分类任务时。这个数据集最初由意大利伊斯普拉的C.N.R.研究所的Forina等人收集,用于化学和生物指标的分析。

数据集概览:

  • 样本数量:178个样本。

  • 特征数量:13个化学指标,包括酒精含量、苹果酸含量、柠檬酸含量、残留糖量、氯化物含量、游离硫、总硫、硫酸盐、密度、pH值和色度等。

  • 标签数量:3个葡萄酒类别,基于葡萄酒的类型或品种。

数据集的应用:

  • 分类任务:葡萄酒数据集通常用于分类任务,特别是多类分类问题。

  • 模型训练和测试:用于训练和测试不同的分类算法,如决策树、随机森林、支持向量机等。

在Scikit-learn中加载葡萄酒数据集的代码如下:

from sklearn.datasets import load_wine# 加载葡萄酒数据集
wine = load_wine()# 获取特征数据和目标数据
X_wine = wine.data
y_wine = wine.target# 显示特征名称
print("特征名称:", wine.feature_names)# 显示目标名称
print("标签名称:", wine.target_names)# 显示数据集的形状
print("\n特征数据形状:", X_wine.shape)# 显示目标数据的形状
print("标签数据形状:", y_wine.shape)# 显示前几个样本的数据和标签
print("\n前几个样本的特征数据:\n", X_wine[:5])
print("对应的标签数据:\n", y_wine[:5])
  • 输出结果:

图片

四、乳腺癌数据集

乳腺癌数据集(Breast Cancer Dataset)是一个重要的医学数据集,用于通过计算机辅助诊断来提高乳腺癌的诊断率。

数据集概览:

  • 样本数量:569个样本,其中良性样本357个,恶性样本212个。

  • 特征数量:30个数值型特征,这些特征描述了乳腺肿瘤的不同测量值,如肿瘤的半径、纹理、周长、面积、平滑度、紧密度、凹陷度、凹陷点数、对称性以及分形维数等 。

  • 标签数量:2个标签,代表肿瘤的良性(benign)或恶性(malignant)状态,通常用"M"和"B"表示,其中"M"代表恶性,"B"代表良性 。

数据集的应用:

  • 该数据集被用来训练和测试不同的机器学习模型,如LDA和XGBoost算法,以构建乳腺癌预测模型 。

在Scikit-learn中加载乳腺癌数据集的代码如下:

from sklearn.datasets import load_breast_cancer# 加载乳腺癌数据集
breast_cancer = load_breast_cancer()# 查看特征名称
print("特征名称:", breast_cancer.feature_names)# 查看目标名称
print("标签名称:", breast_cancer.target_names)# 查看数据集的形状
print("\n特征数据形状:", breast_cancer.data.shape)# 查看标签数据的形状
print("标签数据形状:", breast_cancer.target.shape)# 显示前几个样本的数据和标签
print("\n前几个样本的特征数据:\n", breast_cancer.data[:5])
print("对应的目标标签(房价中位数):\n", breast_cancer.target[:5])
  • 输出结果:

图片

五、加州房价数据集

加州房价数据集(California Housing Dataset)是一个基于1990年加州人口普查数据构建的回归数据集。

数据集概览:

  • 样本数量:20,640个样本。

  • 特征数量:9个特征值,分别为经度(longitude)、纬度(latitude)、住房中位年龄(housing_median_age)、房间总数(total_rooms)、卧室总数(total_bedrooms,存在一些缺失值)、人口数(population)、家庭数(households)、收入中位数(median_income)和海洋接近度(ocean_proximity,一个分类特征)。

  • 标签类别:房价中位数(median_house_value),以100,000美元为单位。

数据集的应用:

  • 通常用于回归任务,预测房屋价格。

在Scikit-learn中加载葡萄酒数据集的代码如下:

from sklearn.datasets import fetch_california_housing# 加载加州房价数据集
california_housing = fetch_california_housing()# 显示特征名称
print("特征名称:", california_housing.feature_names)# 显示目标变量名称
print("标签名称:", california_housing.target_names)# 显示数据集的形状
print("\n特征数据形状:", california_housing.data.shape)# 显示目标数据的形状
print("标签数据形状:", california_housing.target.shape)# 显示前几个样本的数据和标签
print("\n前几个样本的特征数据:\n", california_housing.data[:5])
print("对应的目标标签(房价中位数):\n", california_housing.target[:5])
  • 输出结果:

图片

总结

Scikit-learn内置的各种数据集为你的数据分析和机器学习项目提供强大支持。赶快动手尝试Scikit-learn内置数据集,开启你的机器学习之旅吧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1487782.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

论文解读 | ICML2024:突破Transformer上下文学习中的瓶颈

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 作者简介 付靖文,西安交通大学博士生 简介 上下文学习,即从上下文示例中学习,是Transformer一项令人印象深刻的能力。然而,由于学习瓶颈的出现——在训练过程中模…

【Java题解】以二进制加法的方式来计算两个内容为二进制数字的字符串相加的结果

🎉欢迎大家收看,请多多支持🌹 🥰关注小哇,和我一起成长🚀个人主页🚀 👑目录 分析:🚀 数字层面分析⭐ 字符串层面分析⭐ 代码及运行结果分析:&#x1f6…

对语言大模型的现状总结与趋势

ChatGPT与LLM技术现状 LLM的主要手段 模型:Transformer拥有强大的表示能力,能对具有组合性(compositinality)的语言进行很好的表示和学习。 预训练(pre-training):使用大规模文本数据进行语言建模(langu…

浅谈监听器之后端监听器

浅谈监听器之后端监听器 “后端监听器”(Backend Listener)是一种高级功能,用于异步地将测试结果数据发送至外部系统,如数据库、消息队列或时间序列数据库等,以便于长期存储、实时分析和可视化展示。 后端监听器的作…

绕过token降低与对方服务器交互时延,如何实现??

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

[C++] string管理:深浅拷贝写时拷贝

文章目录 拷贝问题的引入问题代码string类的构造函数String 类的析构函数测试入口函数(问题)详细分析 浅拷贝深拷贝传统版与现代版的String类传统String类现代版String类 写时拷贝先构造的对象后析构的影响写时拷贝举例及测试样例代码举例测试用例 拷贝问…

浅谈Llama3.1,从结构、训练过程、影响到数据合成

Llama3.1系列模型的开源,真让大模型格局大震,指标上堪比最好的闭源模型比如GPT 4o和Claude3.5,让开源追赶闭源成为现实。 这里给大家分享一篇俊林兄(知乎张俊林)的一篇解读,主要对LLaMA3.1的模型结构、训练…

1.1 操作系统的基本概念

文章目录 操作系统的概念(定义)操作系统的目标和功能操作系统作为计算机系统资源的管理者操作系统向上层提供方便易用的服务命令接口程序接口 操作系统作为最接近硬件的层次 操作系统的特征(4个)并发共享互斥共享方式同时共享方式 虚拟虚拟处理器&#x…

【性能优化】在大批量数据下使用 HTML+CSS实现走马灯,防止页面卡顿(二)

上一篇只是简单演示了’下一张’的操作和整体的设计思路,这两天把剩余功能补全了,代码经过精简,可封装当成轮播组件使用,详细如下. 代码 <template><div class"container"><button click"checkNext(last)">上一张</button><b…

Vue Router基础

Router 的作用是在单页应用&#xff08;SPA&#xff09;中将浏览器的URL和用户看到的内容绑定起来。当用户在浏览不同页面时&#xff0c;URL会随之更新&#xff0c;但页面不需要从服务器重新加载。 1 Router 基础 RouterView RouterView 用于渲染当前URL路径对应的路由组件。…

Linux--Socket编程预备

目录 1. 理解源 IP 地址和目的 IP 地址 2.端口号 2.1端口号(port)是传输层协议的内容 2.2端口号范围划分 2.3理解 "端口号" 和 "进程 ID" 2.4理解 socket 3.传输层的典型代表 3.1认识 TCP 协议 3.2认识 UDP 协议 4. 网络字节序 5. socket 编程接…

边缘计算网关项目(含上报进程、32Modbus采集进程、设备搜索响应进程源码)

目录 边缘层 架构说明 包含知识点 数据上报进程 功能描述 功能开发 上报线程 数据存储线程 指令处理线程 项目源码 上报模块.c代码&#xff1a; 上报模块Makefile代码&#xff1a; STM32采集模块.c代码 设备搜索响应模块Linux部分.c代码 设备搜索响应模块Qt端代码.h …

流量录制与回放:jvm-sandbox-repeater工具详解

在软件开发和测试过程中&#xff0c;流量录制与回放是一个非常重要的环节&#xff0c;它可以帮助开发者验证系统在特定条件下的行为是否符合预期。本文将详细介绍一款强大的流量录制回放工具——jvm-sandbox-repeater&#xff0c;以及如何利用它来提高软件测试的效率和质量。 …

《Cross-Modal Dynamic Transfer Learning for Multimodal Emotion Recognition》

Multi-modal系列论文研读目录 文章目录 Multi-modal系列论文研读目录1.ABSTRACT2.INDEX TERMS3.INTRODUCTION4.RELATED WORKSA. MULTIMODAL EMOTION RECOGNITION 多模态情感识别1) CONVENTIONAL FUSION METHODS 常规融合方法2) TRANSFORMER-BASED FUSION METHODS 基于变压器的融…

C#测试控制台程序调用Quartz.NET的基本用法

Quartz.Net是常用的任务调用框架之一&#xff0c;既能在客户端程序中使用&#xff0c;也支持在网页程序后台调用。本文结合参考文献4中的示例代码学习其在控制台程序中的基本用法。   VS2022新建控制台项目&#xff0c;在Nuget包管理器中搜索并安装Quartz包&#xff0c;如下所…

IDEA在编译的时候报Error: java: 找不到符号符号: 变量 log lombok失效问题

错误描述 idea因为lombok的报错: java: You arent using a compiler supported by lombok, so lombok will not work and has been disabled.Your processor is: com.sun.proxy.$Proxy8Lombok supports: sun/apple javac 1.6, ECJ 原因&#xff1a;这是由于Lombok的版本过低的…

若依 ruoyi poi Excel合并行的导入

本文仅针对文字相关的合并做了处理 &#xff0c;图片合并及保存需要另做处理&#xff01;&#xff01; 目标&#xff1a;Excel合并行内容的导入 结果&#xff1a; 1. ExcelUtil.java 类&#xff0c;新增方法&#xff1a;判断是否是合并行 /*** 新增 合并行相关代码&#xff1a;…

matlab 绘制参数方程

matlab 绘制参数方程 绘制参数方程绘制结果 绘制参数方程 clc; clear; close all;axis_length 100;% 定义参数t的范围 t 0:0.01:100;% 计算x和y的值 x t.^2 1; y 4*t - t.^2;% 绘制函数图像 plot(x, y); xlabel(x); ylabel(y); title(Plot of the curve xt^21, y4t-t^2…

Uprecise软件的基本功能

UPrecise 是和芯星通独立开发的评估软件&#xff0c; 旨在帮助用户便捷地对公司产品进行可视化操作。 用户可通过该软件以串口或端口的方式与接收机进行交互并直观地查看其状态信息&#xff0c;连接后 UPrecise 将自动识别接收机的波特率和类型&#xff0c;动态显示该类型接收机…

Python3网络爬虫开发实战(2)爬虫基础库

文章目录 一、urllib1. urlparse 实现 URL 的识别和分段2. urlunparse 用于构造 URL3. urljoin 用于两个链接的拼接4. urlencode 将 params 字典序列化为 params 字符串5. parse_qs 和 parse_qsl 用于将 params 字符串反序列化为 params 字典或列表6. quote 和 unquote 对 URL的…