【数据挖掘 | 数据预处理】缺失值处理 重复值处理 文本处理 确定不来看看?

在这里插入图片描述

🤵‍♂️ 个人主页: @AI_magician
📡主页地址: 作者简介:CSDN内容合伙人,全栈领域优质创作者。
👨‍💻景愿:旨在于能和更多的热爱计算机的伙伴一起成长!!🐱‍🏍
🙋‍♂️声明:本人目前大学就读于大二,研究兴趣方向人工智能&硬件(虽然硬件还没开始玩,但一直很感兴趣!希望大佬带带)

在这里插入图片描述

【深度学习 | 核心概念】那些深度学习路上必经的核心概念,确定不来看看? (一)
作者: 计算机魔术师
版本: 1.0 ( 2023.8.27 )

摘要: 本系列旨在普及那些深度学习路上必经的核心概念,文章内容都是博主用心学习收集所写,欢迎大家三联支持!本系列会一直更新,核心概念系列会一直更新!欢迎大家订阅

该文章收录专栏
[✨— 《深入解析机器学习:从原理到应用的全面指南》 —✨]

数据预处理

处理缺失值

这些方法的选择取决于数据集的特点、缺失值的模式以及所使用的分析方法。在实际应用中,需要根据具体情况选择适当的方法,并进行验证和评估,以确保处理缺失值的有效性和合理性。

当数据存在空值时(除了看缺失值个数,建议看缺失值的比例, 更具有代表性),

# 自定义analysis函数,实现数据信息探索的描述性统计分析和缺失值分析
def analysis(data):print('描述性统计分析结果为:\n', data.describe())print('各属性缺失值占比为:\n', 100*(data.isnull().sum() / len(data)))
名称介绍优缺点
删除删除包含缺失值的数据行或列。优点:简单快捷,适用于缺失值较少的情况。缺点:可能会丢失有用的信息,特别是当缺失值的模式与其他变量相关时。如果缺失值占比较大,可能导致样本减少。
插补使用统计方法估计缺失值,并填充数据。常见的插补方法包括均值、中位数、众数、回归等。 或者根据数据实际场景填补, 比如电商手机数据同等系列其他数据可以补充优点:保留样本量,不会丢失数据。缺点:可能引入估计误差,可能改变数据的分布和关系。插补方法的选择和质量对结果影响较大。
标记使用特殊值(如NaN、-1)或标签(如"Unknown", “其他”)来标记缺失值。优点:简单直观,不会改变数据的分布和关系。缺点:在某些算法中可能会引入偏差。处理标记值的方式需要小心,以免引入错误。
分类将缺失值作为一个特殊的类别对待。优点:不会丢失信息,适用于缺失值有特别含义的情况。缺点:可能会使数据变得更复杂,某些算法可能需要额外的调整才能处理分类特征。
多重插补使用多个插补模型,通过迭代的方式进行插补优点:可以更准确地估计缺失值,并提供不确定性估计。缺点:计算复杂度较高,可能需要更长 的处理时间。需要小心处理迭代过程中的收敛性和稳定性。
模型预测使用机器学习模型来预测缺失值。可以使用其他特征作为输入,预测缺失值。优点:可以更准确地估计缺失值,考虑了特征之间的关系。缺点:计算复杂度较高,需要训练和调整模型。可能会引入模型预测误差。
插补法

对于时间序列的数据,以下几种插值方法比较常用和建议使用:

  1. 线性插值:线性插值是最简单和常用的插值方法之一。它假设数据在两个已知数据点之间是线性变化的,通过计算两个已知数据点之间的线性函数来填充空值。线性插值简单、快速,并且可以适用于大多数情况。

  2. 拉格朗日插值:拉格朗日插值是一种多项式插值方法,它通过计算一个多项式函数来逼近数据的变化。拉格朗日插值可以更准确地拟合数据的非线性变化,但对于大规模数据集和高阶多项式,计算量可能较大。

  3. 样条插值:样条插值是一种平滑的插值方法,通过拟合一条平滑的曲线来逼近数据的变化。样条插值可以处理数据的曲线和趋势变化,常用的样条插值方法包括线性样条插值、三次样条插值等。

  4. 时间序列模型插值:对于时间序列数据,可以使用时间序列模型来预测和填充空值。常用的时间序列模型包括ARIMA模型、指数平滑模型、神经网络模型等。这些模型可以根据时间的趋势、季节性等特征来预测未来的数值,并填充空值。

选择插值方法时,应根据时间序列数据的性质和特征选择最适合的方法。对于平稳的时间序列,线性插值或拉格朗日插值可能足够;对于非线性或具有季节性的时间序列,样条插值或时间序列模型插值可能更合适。

此外,还可以根据数据的连续性和周期性来选择插值方法。例如,对于缺失的周期性数据,可以使用周期性插值方法,如周期移动平均或周期性线性插值。

处理重复值

方法名称方法介绍优缺点
删除重复值从数据集中删除所有重复的观测值或行。优点:简单快捷;缺点:可能会导致数据丢失,特别是在其他列的值也存在差异的情况下。
唯一化保留数据集中的唯一值,并删除重复的观测值或行。优点:保留了数据集中的唯一信息;缺点:可能会导致数据丢失,特别是在其他列的值也存在差异的情况下。
标记重复值标记数据集中的重复值,以便后续分析中可以识别它们。优点:保留了数据集中的所有信息,并能够识别重复值;缺点:可能会增加数据集的大小,增加后续处理的复杂性。
聚合数据将重复值聚合成单个值,例如计算平均值或合并文本字符串。优点:保留了数据集中的所有信息,并提供了汇总的结果;缺点:根据具体情况,可能会引入汇总误差或信息丢失。
保留第一个/最后一个仅保留重复值中的第一个或最后一个观测值,删除其他重复值。优点:简单易行;缺点:可能会引入偏差,因为保留的观测值可能不代表整个重复值组的特征。

这些方法可以根据具体的数据集和分析需求选择和调整。在处理重复值之前,通常还需要对数据进行排序,以确保相邻观测值之间的一致性。此外,了解数据集中的重复值产生的原因也是很重要的,这有助于确定最适合的处理方法。

注意在使用pd.drop_duplicates() 选择subset某一列避免全部删除

文本处理

当涉及到自然语言处理(NLP)任务时,文本预处理是一个重要的步骤。它旨在将原始文本数据转换为机器学习算法可以理解和处理的格式。下面是几种常见的文本预处理算法,包括它们的介绍以及优缺点。

名称介绍优缺点
分词(Tokenization)将文本拆分为词(或标记)的过程。常见的方法是使用空格或标点符号来分隔词语。例如jieba库(等 )优点:简单快速,适用于大多数NLP任务。缺点:无法处理歧义和特殊情况(如缩写词和复合词)。
停用词去除(Stop Word Removal)停用词是在文本中频繁出现但通常不携带太多信息的单词(如“the”、“is”、“and”等)。该算法的目标是从文本中去除这些停用词。一般来说有现成的停用词, 实际还要根据实际问题去除额外不需要的文本优点:减少数据维度,提高后续步骤的效果。缺点:有时可能会去除一些重要的上下文信息。
规范化(Normalization)将文本中的单词转换为标准形式,以消除词形变化对分析的影响。例如,将单词的时态、数目和人称转换为统一形式。优点:减少词汇的多样性,提高模型的泛化能力。缺点:可能导致一些信息的丢失。
词干提取(Stemming)通过去除单词的后缀,将单词转换为它的词干形式。例如,将“running”、“runs”和“ran”转换为“run”。优点:简单快速,适用于一些信息检索任务。缺点:可能得到不是真正存在的词汇形式。
词形还原(Lemmatization)将单词还原为它的基本形式(称为词元),具有语义上的准确性。例如,将“am”、“are”和“is”还原为“be”。优点:提供更准确的词汇形式,适用于要求高精度的任务。缺点:计算成本较高,速度较慢。
清洗(Cleaning)去除文本中的噪声、表情、特殊字符和HTML标签或表情符号(一般是&字母;)等非文本数据。根据数据集去除对目标无用的数据,例如电商数据默认好评”您没有填写内容,默认好评“优点:提高文本质量,减少不相关的信息。缺点:可能会丢失一些有用的特征。
编码(Encoding)将文本转换为数字表示形式,以便机器学习算法能够处理。常见的编码方法包括独热编码、词袋模型和词嵌入。优点:方便算法处理,保留了一定的语义信息。缺点:可能无法捕捉词语之间的关系和上下文信息。

这些算法通常会根据具体任务和数据集的特点进行组合使用。选择适当的文本预处理步骤取决于任务的目标和数据的特点。

在这里插入图片描述

						  🤞到这里,如果还有什么疑问🤞🎩欢迎私信博主问题哦,博主会尽自己能力为你解答疑惑的!🎩🥳如果对你有帮助,你的赞是对博主最大的支持!!🥳

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Centos虚拟机安装配置与MobaXterm工具及Linux常用命令

目录 一、Centos操作系统 1.1 Centos介绍 1.2 Centos虚拟机安装 1.3 配置centos的镜像 1.4 虚拟机开机初始设置 1.4.1 查看网络配置 1.4.2 编辑网络配置 二、MobaXterm工具 2.1 MobaXterm介绍 2.2 MobaXterm安装 2.3 切换国内源 三、Linux常用命令和模式 3.1 查看网络配置 …

“2024中国电子信息展会“百年历史展会,4月深圳,7月成都,11月上海

2024年中国电子信息博览会,将如一位游历全国的使者,跨越千山万水,让人们见证中国电子信息产业的辉煌成就。它的足迹将遍布全国多个地区,4月走进繁花似锦的深圳,7月拥抱历史悠久的成都,11月则落脚国际化的上…

CloudCompare 二次开发(20)——二次曲面拟合

目录 一、概述二、代码集成三、结果展示本文由CSDN点云侠原创,原文链接。爬虫网站自重。 一、概述 由CloudCompare——点云二次曲面拟合一文知:CloudCompare软件中的已经集成了二次曲面拟合功能,但是计算出来的拟合参数是不正确的。因此,本文在原有算法的基础上进行修改,…

LSF 概览——了解 LSF 是如何满足您的作业要求,并找到最佳资源来运行该作业的

LSF 概览 了解 LSF 是如何满足您的作业要求,并找到最佳资源来运行该作业的。 IBM Spectrum LSF ("LSF", load sharing facility 的简称) 软件是行业领先的企业级软件。LSF 将工作分散在现有的各种 IT 资源中,以创建共享的,可扩展…

Jupyter notebook如何加载torch环境

默认你已经安装了anaconda 和 pytorch 环境。 1,必须要以管理员身份打开 Anaconda prompt终端, 2,进入pytorch环境中: conda activate pytorch_393,安装必要插件: (1)conda inst…

前端如何不变形的渲染图片大小和图片上的内容

在做前端项目时可能经常会页面图片大小变形或者压缩的情况,一般情况就是height给100%,width给auto就可以了满足大部分使用情况了。有时候需要做一些比较复杂的功能,比如需要在图片上增加锚点,而且图片在适配各种屏幕大小时&#x…

Revit AddIn问题:无法运行外部运行程序“xxxxx“,请与供应商联系以获取帮助,供应商提供给Revit的身份信息为:xxxxxx

1.在二次开发的时候遇到的问题如下 2.参考的: Revit插件加载,addin文件的设置_不存在与应用程序附加模块对应的名称节点-CSDN博客 3.我的解决 确实是路径“C:\ProgramData\Autodesk\Revit\Addins\2018”下的AddIn文件出问题了。因为我安装了2019版本然…

okhttp post请求 header post参数加密遇到的两个问题

如果你对于网络请求用了https后是否还有必要对参数加密有疑问可以看我上篇的文章:网络安全https 记得耐心看完,下面说问题: Caused by: java.lang.IllegalArgumentException: Unexpected char 0x0a 一开始以为是okhttp框架对特殊字符做了现在…

Xray+awvs联动扫描

首先xray开启监听 xray_windows_amd64.exe webscan --listen 127.0.0.1:7777 --html-output xray-xxx.html --plugins sqldet,xxe,upload,brute-force,cmd-injection,struts,thinkphp 然后准备目标csv文件,每行一个url或ip然后加个逗号 接着awvs导入csv 对导进来的每个目…

Umijs项目优化

首先通过npm run analyze 查看打包后的文件进行观察,哪些包的体积大,然后分解开 体积较大的文件:echarts、wangeditor、antd、moment.js package.json 文件配置 .umirc.ts配置文件 1. 分包配置 通过 webpack-chain 的 API 修改 webpack 配置。 chunk…

【Unity ShaderGraph】| 快速制作一个 抖动效果

前言 【Unity ShaderGraph】| 快速制作一个 抖动效果一、效果展示二、UV抖动效果三、应用实例 前言 本文将使用ShaderGraph制作一个抖动效果,可以直接拿到项目中使用。对ShaderGraph还不了解的小伙伴可以参考这篇文章:【Unity ShaderGraph】| Shader Gr…

Linux系统编程,socket通信编程实践练习(C语言)

文章目录 Linux系统编程&#xff0c;socket通信编程实践练习&#xff08;C语言&#xff09;1.服务端代码2.客户端代码 Linux系统编程&#xff0c;socket通信编程实践练习&#xff08;C语言&#xff09; 1.服务端代码 #include <stdio.h> #include <stdlib.h> #in…

Maven Repository使用

1.Maven Repository网站 https://mvnrepository.com/https://mvnrepository.com/ 2.查询需要的依赖 3.参考例子 <!-- https://mvnrepository.com/artifact/org.freeswitch.esl.client/org.freeswitch.esl.client --> <dependency> <groupId>org.freesw…

【c++|opencv】一、基础操作---3.访问图像元素

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 访问图像元素 1. 访问图像像素 1.1 访问某像素 //灰度图像&#xff1a; image.at<uchar>(j, i) //j为行数&#xff0c;i为列数 //BGR彩色图像 i…

智慧矿山:AI算法在带式运输机中的异物识别应用

随着现代农业和工业的发展&#xff0c;带式运输机在各种生产作业中发挥着越来越重要的作用。然而&#xff0c;在带式运输机运行过程中&#xff0c;可能会混入各种异物&#xff0c;这些异物的存在可能会对运输过程和设备本身造成损害。为了解决这一问题&#xff0c;本文将介绍一…

[PHP]pearProject协作系统 v2.8.14 前后端

pearProject是一款轻量级的在线项目/任务协作系统&#xff0c;远程办公协作。 概述 PearProject 不支持 IE8 及以下版本&#xff0c;建议使用基于Webkit内核的现代浏览器访问 PearProject 为前后端分离架构&#xff0c;因此安装分为后端和前端两大部分&#xff0c;需要分别进…

Kafka、RabbitMQ、RocketMQ中间件的对比

消息中间件现在有不少&#xff0c;网上很多文章都对其做过对比&#xff0c;在这我对其做进一步总结与整理。 RocketMQ 淘宝内部的交易系统使用了淘宝自主研发的Notify消息中间件&#xff0c;使用Mysql作为消息存储媒介&#xff0c;可完全水平扩容&#xff0c;为了进一步降低成…

SolidWorks2019安装教程(正版)

网盘资源附文末 一.简介 SolidWorks软件是世界上第一个基于Windows开发的三维CAD系统&#xff0c;由于技术创新符合CAD技术的发展潮流和趋势&#xff0c;SolidWorks公司于两年间成为CAD/CAM产业中获利最高的公司。良好的财务状况和用户支持使得SolidWorks每年都有数十乃至数百…

前端实验(一)单页面应用的创建

实验目的 掌握使用vite创建vue3单页面程序命令熟悉所创建程序的组织结构熟悉单页面程序运行原理能够编写简单的单页面程序 实验内容 创建一个名为vue-demo的单页面程序编写简单的单页面程序页面运行单页面程序 实验步骤 使用vite创建单页面程序 创建项目名为目录vue-demo的…

基于nodejs+vue啄木鸟便民维修网站设计与实现

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性&#xff1a;…