当前位置: 首页 > news >正文

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

一、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)转换

http://www.jsqmd.com/news/330376/

相关文章:

  • 揭秘AI教材编写秘籍,使用AI写教材,有效控制查重率!
  • AI应用测试用例之千问工具(4)
  • AI写论文不用愁!4款AI论文写作利器,一键解决写作难题!
  • 2026年1月31日-2天10万Star!GitHub史上最快开源项目OpenClaw,手把手教你免费实现部署私人AI助手
  • VASP+PHONOPY+pypolymlpj计算不同温度下声子谱,附批处理脚本
  • 图像算法优化常用方式-vivado hls设计
  • 深入解析:RIB表与FIB表的区别
  • 实用指南:让 ETL 更懂语义:DataWorks 支持数据集成 AI 辅助处理能力
  • 电子学会青少年软件编程(C语言)等级考试试卷(一级)2025年12月
  • [运营实战] 节日大促图片来不及做?浅析如何用 AI 批量汉化与修改“季节性”卖点图,灵活承接旺季流量
  • vue 插槽详解
  • 语法:一文搞懂“双宾语”与“宾语补足语”
  • Lazarus的lazlogger单元使用
  • ANTLR4:解析器生成工具的强大力量
  • metahuman 购买安装记录
  • 数据搬运工-DMA(上)
  • AI技术点总结(2)
  • 深度解析Android系统开发工程师岗位:技术体系与实战指南(含面试题库)
  • VisionPro视觉检测软件之打包成安装包
  • 基于Simulink的A*算法自动驾驶路径规划仿真建模示例
  • 开发跨部门沟通话术生成器,按场景(需求对接/问题协调/资源申请),生成礼貌高效话术,兼顾立场和沟通效率,减少跨部门沟通矛盾。
  • 基于Simulink的超声波传感器障碍物检测仿真建模示例
  • 【游戏推荐】ServiceIT:你可以做IT (ServiceIT You can do IT)免安装中文版
  • 2002-2025年各省、地级市农业新质生产力数据
  • 【AI大模型舆情分析】微博舆情分析可视化系统(pytorch2+基于BERT大模型训练微调+flask+pandas+echarts) 实战(上)
  • 工作量证明机制的未来发展方向是什么?
  • 2月1号
  • 2026/2/1总结
  • 腾讯轻量云 Nacos 公网访问排查指南(适用于其他平台的ecs)
  • USB存储设备管理工具 启用或者禁用+usb修复