news 2026/4/23 10:42:46

【动手学深度学习】第三课 数据预处理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【动手学深度学习】第三课 数据预处理

一、pandas

形象地来说,pandas 是 Python 里专门用来处理“表格型数据”的 “超级工具包”。

为什么机器学习离不开它?

机器学习的第一步是数据预处理,而pandas是完成这个步骤最称手的工具。

  • 拿到的原始数据往往是 CSV/Excel 格式,需要用 pandas 读取并清洗。
  • 它能把杂乱的原始数据,整理成模型可以直接输入的干净特征。
  • 处理完后,通过to_numpy()转成Numpy数组,再转成tensor,就能传给 PyTorch训练模型了。

二、读取数据集

下面步骤都需要进行跟练。

我们首先创建一个人工数据集,并存储在csv文件里。

然后,我们要从这个csv文件中读取原始数据集。

于是,导入pandas包,调用read_csv函数来读取数据集。


三、处理缺失值*

NaN代表缺失值,而机器学习模型无法直接处理包含NaN的数据。因此,处理缺失值(NaN)是数据预处理中必不可少的一步。

首先,通过位置索引iloc,将data分为inputs和outputs。

1. 数值

(1)均值填充

对于inputs中缺少的数值,我们一般采用均值填充法。即用这一列的均值来替换NaN。

inputs.mean()求均值,numeric_only即只针对数值型。

(2)删除法

当然,在实际应用中,如果某一列缺失值占比极高,我们还会采用删除法,见作业第一题。

2. 类别值、离散值

对于inputs中缺少的类别值或离散值,我们将NaN看作一个类别☝️。

比如Alley这一列,它就只有两个类别值:Pave和NaN,pandas会自动将这一列转换为“Alley_Pave”和“Alley_NaN”,然后用0和1来表示这一行的类别值。


四、转换格式

现在inputs和outputs里都是数值类型,我们需要将它转换为Tensor格式。

先要通过to_numpy转成Numpy格式,再通过torch.tensor转成Tensor格式。


五、作业*

创建包含更多行和列的原始数据集。

(懒得自己输,让ai帮我生成了一个学生-成绩表)

1. 删除缺失值最多的列。

第一反应是循环,而pandas的核心优势之一就是向量化操作—— 它会对整个表格进行批量处理,而不需要像操作原生 Python 列表 那样手动写for循环。

(1)首先,读取数据集后,统计每一列的缺失值数量:

  • data.isnull():表格里每个值是否缺失,返回一个跟data一样大的数组
  • data.isnull().sum():默认按列求和

(2)然后,找到缺失值最多的那一列:

  • missing_count.idxmax:返回最大值对应的索引,即列名。

(3)最后,删掉这一列

总的来说,上面是新手建议一步步写的,其实可以写成一句:

2. 将预处理后的数据集转换为张量格式。

(1)先均值填充缺失值

(2)转换

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/8 13:50:33

ANTLR4:解析器生成工具的强大力量

探索ANTLR4:解析器生成工具的强大力量 ANTLR4(ANother Tool for Language Recognition)是一个强大的解析器生成工具,广泛应用于计算机科学领域,特别是在编译器设计、语言处理和文本分析等方面。今天,我们将…

作者头像 李华
网站建设 2026/4/23 13:19:52

开发跨部门沟通话术生成器,按场景(需求对接/问题协调/资源申请),生成礼貌高效话术,兼顾立场和沟通效率,减少跨部门沟通矛盾。

1. 实际应用场景描述 在企业中,跨部门沟通是日常工作的重要部分,但常遇到以下问题: - 需求对接:向其他部门提出需求时,对方配合度不高或理解偏差 - 问题协调:出现问题时,沟通语气不当引发矛盾 …

作者头像 李华
网站建设 2026/4/23 12:55:08

metahuman 购买安装记录

下载到本地 FAB 上下载的 MetaHuman 通常是 FBX Textures/Materials 文件夹。 导入 Unreal Engine UE5 → Import → Skeletal Mesh / Textures / Materials 可以选择导入骨骼动画、面部 Shape Keys。 或者导入 Blender Blender → File → Import → FBX 配置好 Skelet…

作者头像 李华
网站建设 2026/4/19 3:36:01

2002-2025年各省、地级市农业新质生产力数据

资源介绍 农业新质生产力是以科技创新为核心驱动力,以科技化、数字化、网络化和智能化为主线,通过技术革命性突破、生产要素创新性配置、产业深度转型升级,实现农业全要素生产率显著跃升的先进生产力形态 本数据基于2002-2025年各省政府工作…

作者头像 李华
网站建设 2026/4/23 12:25:55

银行柜台管理系统|基于java+ vue银行柜台管理系统(源码+数据库+文档)

银行柜台管理 目录 基于springboot vue银行柜台管理系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取: 基于springboot vue银行柜台管理系统 一、前言 博主介绍&…

作者头像 李华
网站建设 2026/4/23 12:26:04

GrokAI1.1.14-release.09 | 实测可无敏感生图,可生成视频

Grok AI 是由埃隆马斯克领导的科技公司 xAI 开发的一款先进人工智能助手。它能够像人类一样思考并回答问题,分析和解答自然语言问题。通过此应用,用户可以进行写作、获取知识、接受教育以及完成日常任务。Grok AI Mod APK 版本解锁了原始应用中的所有高级…

作者头像 李华