2021年最有用的数据清洗 Python 库!建议看一下!

年底总结 2021年最有用的数据清洗 Python 库 大家好,我是IT界搬运喵。 不知不觉2021就进入了末尾,今天我来一次年底总结,总结一下2021年最有用的数据清洗 Python 库。 大多数调查表明,数据科学家和数据分析师需要花费 70-80% 的时间来清理和准备数据以进行分析。 对于许多数据工作者来说,数据的清理和准备也往往是他们工作中最不喜欢的部分,因此他们将另外 20-30% 的时间花在抱怨上,这虽然是一个玩笑,但是却很好的反应了数据清洗在数据分析工作当中的特殊地位 在平时的工作生活中,数据总是会出现某些不一致、缺失的输入、不相关的信息、重 阅读详情

70233b6a14d8dc15b10f34b0b711212b.png

大多数调查表明,数据科学家和数据分析师需要花费 70-80% 的时间来清理和准备数据以进行分析。

对于许多数据工作者来说,数据的清理和准备也往往是他们工作中最不喜欢的部分,因此他们将另外 20-30% 的时间花在抱怨上,这虽然是一个玩笑,但是却很好的反应了数据清洗在数据分析工作当中的特殊地位

在平时的工作生活中,数据总是会出现某些不一致、缺失的输入、不相关的信息、重复的信息或彻头彻尾的错误等等情况。尤其是当数据来自不同来源时,每个来源都会有自己的一套怪癖、挑战和不规则之处。凌乱的数据是没有用处的,有时候甚至会起到反方向作用,这就是数据科学家花费大部分时间来理解所有数据的原因

虽然清理和准备数据既繁琐又辛苦,但是我们的数据越干净、越有条理,后面的一切工作都会变得更快、更轻松、更高效。

本文就来分享精选的 15 个最有用的 Python 数据清理库,希望在数据分析的路上,大家都能越快轻松!

  • NumPy

  • Pandas

  • Matplotlib

  • Datacleaner

  • Dora

  • Seaborn

  • Arrow

  • Scrubadub

  • Tabulate

  • Missingno

  • Modin

  • Ftfy

  • SciPy

  • Dabl

  • Imblearn

NumPy

NumPy 是一个快速且易于使用的开源科学计算 Python 库,它也是数据科学生态系统的基础库,因为 Pandas 和 Matplotlib 等许多最流行的 Python 库都是建立在 NumPy 之上的

除了作为其他强大库的基础之外,NumPy 还具有许多特性,使其成为 Python 数据分析不可或缺的一部分。由于其速度和多功能性,NumPy 的矢量化、索引和广播概念代表了数组计算的事实标准,NumPy 在处理多维数组时尤为出色。它还提供了一个全面的数值计算工具箱,如线性代数例程、傅立叶变换等

NumPy 可以为很多人做很多事情,其高级语法允许任何背景或经验水平的程序员使用其强大的数据处理能力。例如,基于 NumPy 生成了有史以来第一张黑洞图像,它还证实了引力波的存在,目前正在各种科学研究中都起着重要的作用

就是这样一个涵盖从运动到太空的所有内容的程序也可以帮助我们管理和清理数据,不得不说,Numpy 库太神奇了

Pandas

Pandas 是由 NumPy 提供支持的库,它是 Python 中使用最广泛的 数据分析和操作库

Pandas 快速且易于使用,其语法非常人性化,再加上其在操作 DataFrame 方面拥有令人难以置信的灵活性,使其成为分析、操作和清理数据不可或缺的工具

这个强大的 Python 库不仅可以处理数字数据,还可以处理文本数据和日期数据。它允许我们加入、合并、连接或复制 DataFrame,并使用 drop() 函数轻松添加或删除列或行

简而言之,Pandas 结合了速度、易用性和灵活的功能,创建了一个非常强大的工具,使数据操作和分析变得快速而简单

Matplotlib

了解我们的数据是清理过程的关键部分,清理数据的目的就是使其易于理解。但是在我们拥有漂亮干净的数据之前,需要先了解凌乱数据中的问题,例如它们的种类和范围,然后才能对其进行有效的清理,这个操作的很大一部分取决于数据的准确和直观呈现的程度

Matplotlib 以其令人印象深刻的数据可视化而闻名,这使其成为数据清理工作中的宝贵工具,它是使用 Python 生成图形、图表和其他 2D 数据可视化的首选工具库

我们可以在数据清理中使用 Matplotlib,通过生成分布图来帮助我们了解数据的不足之处

Datacleaner

Datacleaner 是一个基于 Pandas DataFrame 的第三方库,虽然 Datacleaner 出现的时间比较短并且不如 Pandas 流行,但是,Datacleaner 有一种独特的方法,它结合了一些典型的数据清理功能并使其自动化,这为我们节省了宝贵的时间和精力

使用 Datacleaner,我们可以在逐列的基础上使用众数或中位数轻松替换缺失值,对分类变量进行编码,并删除具有缺失值的行

Dora

Dora 库使用 Scikit-learn、Pandas 和 Matplotlib 进行探索性分析,或者更具体地说,用于自动化探索性分析中最不受欢迎的方面。除了处理特征选择、提取和可视化之外,Dora 还优化和自动化数据清理

Dora 将通过许多数据清理功能为我们节省宝贵的时间和精力,例如输入缺失值、读取缺失值和缩放不佳的值的数据以及输入变量的缩放值等等

此外,Dora 提供了一个简单的界面,用于在我们转换数据时保存数据快照,并以其独特的数据版本控制功能与其他 Python 包区别开来

Seaborn

在前面,我们讨论了可视化数据以揭示数据缺陷和不一致的重要性。在解决数据中的问题之前,我们需要知道它们是什么以及它们在哪里,此时使用数据可视化就是最好的方案。虽然对于许多 Python 用户来说,Matplotlib 是数据可视化的首选库,然而一些用户发现 Matplotlib 在自定义数据可视化选项方面的局限性也非常大,于是我们有了Seaborn。

Seaborn 是一个数据可视化包,它建立在 Matplotlib 之上,可生成有吸引力且信息丰富的统计图形,同时提供可定制的数据可视化

它也改进了在 Pandas 的 DataFrames 中的运行效率,可以更加紧密的与 Pandas 相结合,使探索性分析和数据清理更加愉快

Arrow

提高数据质量的一个重要方面是在整个 DataFrame 中创建统一性和一致性,对于试图在处理日期和时间时创建统一性的 Python 开发人员来说,这个过程可能往往会比较困难。经常在花费了无数个小时和无数行代码之后,日期和时间格式化的特殊困难仍然存在

Arrow 是一个 Python 库,专门用于处理这些困难并创建数据一致性。它的省时功能包括时区转换;自动字符串格式化和解析;支持 pytz、dateutil 对象、ZoneInfo tzinfo;生成范围、下限、时间跨度和上限,时间范围从微秒到数年不等

Arrow 可以识别时区(与标准 Python 库不同),并且默认为 UTC。它通过更少的代码和更少的输入授予用户更熟练的日期和时间操作命令。这意味着我们可以为我们的数据带来更大的一致性,同时减少花在时钟上的时间

Scrubadub

Scrubadub 是金融和医疗数据科学家的最爱,它是一个 Python 库,专门用于从自由文本中消除个人身份信息 (PII)

这个简单、免费和开源的软件包可以轻松地从我们的数据中删除敏感的个人信息,从而保护当事人的隐私和安全

Scrubadub 目前允许用户清除以下信息的数据:

  • 电子邮件地址

  • 网址

  • 姓名

  • Skype 用户名

  • 电话号码

  • 密码/用户名组合

  • 社会安全号码

Tabulate

只需调用一个函数,Tabulate 就可以使用我们的数据创建小型且有吸引力的表格,由于具有数字格式、标题和小数列对齐等许多功能,这些表格具有很高的可读性

这个开源库还允许用户使用其他工具和语言处理表格数据,让用户能够以其他擅长的格式(如 HTML、PHP 或 Markdown Extra)输出数据

Missingno

处理缺失值是数据清理的主要方面之一,Missingno 库应运而生。它逐列识别和可视化 DataFrame 中的缺失值,以便用户可以看到他们数据所处的状态

将问题可视化是解决问题的第一步,而 Missingno 是一个简单易用的库,可以很好的完成这项工作

Modin

正如我们上面提到的,Pandas 已经是一个快速的库了,但 Modin 将 Pandas 带到一个全新的水平。Modin 通过分发数据和计算速度来提高 Pandas 的性能

Modin 用户将受益于与 Pandas 语法的完美契合和不显眼的集成,可以将 Pandas 的速度提高多达 400%!

Ftfy

Ftfy 的诞生是为了一个简单的任务:将糟糕的 Unicode 和无用的字符转换为相关且可读的文本数据 

比如:

“quoteâ€\x9d = "quote"
ü = ü
lt;3 = <3

无需花费大量时间处理文本数据,使用 Ftfy 就可以快速理解无意义的内容

SciPy

SciPy 不仅仅是一个库,它还是一个完整的数据科学生态系统

此外,SciPy 还提供了许多专用工具,其中之一是 Scikit-learn,完美可以利用其“Preprocessing”包进行数据清理和数据集标准化

Dabl

scikit-learn 项目的一名核心工程师开发了 Dabl 作为数据分析库,以简化数据探索和预处理的过程

Dabl 有一个完整的流程来检测数据集中的某些数据类型和质量问题,并自动应用适当的预处理程序

它可以处理缺失值,将分类变量转换为数值,它甚至具有内置的可视化选项以促进快速数据探索

Imblearn

我们要介绍的最后一个库是 Imbalanced-learn(缩写为 Imblearn),它依赖于 Scikit-learn 并为面临分类和不平衡类的 Python 用户提供工具支持

使用称为“undersampling”的预处理技术,Imblearn 将梳理完美的数据并删除数据集中的缺失、不一致或其他不规则数据

总结

我们的数据分析模型取决于我们输入的数据,并且我们的数据越干净,处理、分析和可视化就越简单,善于利用工具,会使我们的工作更加轻松愉快

虽然上面总结的工具不可能包含所有的数据清洗工具,但是我们只要选择适合我们的就可以了,希望今天的分享能够帮助到你~

好了,今天分享就到这里,如果大家觉得满意请务必点个赞 + 在看 支持下

推荐阅读:
入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径
干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影
趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!
AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影
小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!|  再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|

年度爆款文案

点阅读原文,看200个Python案例!

Python数据清洗 数据清洗是指对原始数据进行筛选、过滤和清理,以去除不必要的数据、修复错误数据、填补缺失值等。数据清洗可以采用各种方法,包括使用正则表达式、删除无用数据列、去重、替换异常值等。其中,缺失值是数据清洗中最常见的问题,可以使用中位数、平均数、众数或者插值法来填充缺失值。当我们进行数据分析和建模时,首先要面对的问题之一就是数据清洗。数据清洗是指对原始数据进行筛选、过滤和修复,以确保数据的质量和准确性。以下将介绍数据清洗的重要性,并结合Python代码详细讲解常用的数据清洗方法。 阅读详情

相关推荐

用OpenCV+ROS实现焊接机器人智能纠偏:线激光视觉的算法调参全流程

本文详细介绍了基于OpenCV和ROS的焊接机器人智能纠偏系统全流程。通过线激光视觉系统实时感知焊缝,重点解析了抗干扰图像预处理、改进的Steger算法提取激光条纹中心线,以及从2D像素到机器人基坐标系的完整坐标变换。该系统为应对焊接飞溅、弧光等复杂工况,实现高精度实时路径纠偏提供了从算法优化到工程集成的完整解决方案。

vodka的博客 160

数据清洗的工具和技术:提高数据分析的效率和准确性

我们也可以使用dplyr包来处理数据,例如筛选数据、排序数据、分组数据等。R的强大功能和灵活性使其成为数据清洗的首选工具之一。OpenRefine是一款免费的开源数据清洗工具,它可以帮助我们快速地清洗和转换大量的数据。在进行数据清洗时,我们可以使用多种数据清洗工具和技术,例如OpenRefine、Trifacta、Python、R和SQL等。这些工具和技术可以帮助我们快速地清洗和转换大量的数据,提高数据分析的效率和准确性。Trifacta是一款专业的数据清洗工具,它可以帮助我们快速地清洗和转换大量的数据。

LanLanLanDiao的博客 3563

TMS320F280049C 学习笔记11 控制率加速器 CLA 例程

总结了TI官方在C2000Ware_3_01_00_00版本中提供的7个与CLA相关的例程。

whyorwhnt的专栏 1万+

机器学习 主成分分析(Principal Component Analysis)

主成分分析1 什么是主成分分析2 实现自己的PCA算法 1 什么是主成分分析 主成分分析法是一个非监督学习的机器学习算法,主要用于数据的降维,对于高维数据,通过降维,可以发现更便于人类理解的特征。这里我们还是从二维数据去开始理解: 当我们对高维数据降低到低维数据时,我们就要把多个轴合成一个轴,如果我们相对上图中的数据进行降维使其变为一维,如果我们直接将其映射到其中一个轴上时,会丢掉太多的信息,我们的任务就是在数据降维的同时还要保留尽可能多的信息,于是我们找到了上图中红线作为我们降维之后的坐标轴,那我们是如

Yangshengmig_zZ 1960

PCL 提取两片点云的非重叠部分【2025最新版】

PCL 提取两片点云的非重叠部分。博客长期更新,本文最近一次更新时间为:2025年9月1日。

点云侠的博客 36万+

YOLOv8融合改进 更换检测头为Detect_DyHead同时添加C2f_DBB模块

yolov8独家训练测试融合网络结构,提供详细步骤详细代码,手把手教你在yolov8官方包中把检测头更换为Detect_DyHead检测头,并且将原始的C2f模块更换成C2f_DBB模块,提高检测精度,亲测在多个数据集上有涨点!!!!!

分享一些自己改进代码的实例 4747

推荐开源项目:StripAttributes — 简洁有效的数据清洗工具

在处理用户输入或者从数据库读取的数据时,我们常常需要进行一些预处理工作,例如去除首尾空白字符或保持一致性。【StripAttributes】是一个轻量级的ActiveModel扩展库,它能帮助你自动完成这些任务,提升你的代码效率。 ## 项目介绍 StripAttributes是一个针对Ruby on Rails和ActiveModel的Gem,其主要功能是在验证之前自动移除模型属性中的前导和

gitblog_00013的博客 719

基于深度学习的智能监考系统(UI界面 + YOLOv8/v7/v6/v5代码 + 训练数据集)

行为检测与识别:能够自动识别考生在考试中的异常行为,如作弊、看手机、交头接耳等。实时监控:在考试期间,系统能够对考生的行为进行实时监控,及时发出警报。用户交互:通过简洁易用的UI界面,便于监考人员进行实时监控、查看警报和视频回放等操作。行为分析与反馈:系统能够识别出考生的违规行为,并提供反馈。本文详细介绍了如何构建基于YOLOv5的智能监考系统,从数据集的准备、YOLO模型的训练,到UI界面的设计与实现,展示了一个完整的深度学习监控系统。

YOLO 781

DataCleaner---14.2 使用场景

14.2 使用场景 DataCleaner CLI的使用场景有: 执行分析job 列出已注册的数据存储 列出数据存储中的架构 列出架构中的数据表 列出数据表中的列 列出可用的分析仪、转换器或过滤器 通过使用-usage参数调用可执行文件,可以了解这些场景是如何实现的: > datacleaner-console.exe -usage -conf (-configuration, --configuration-file) FILE : XML file describing the

weixin_43899418的博客 329

c++中,部署Ethercat IGH + PREEMPT_RT 环境,跑DC模式,如何实现?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值 。

**My Coding Family** 1360

一文掌握DrissionPage的详细使用

是一个基于 Python 的网页自动化工具,主要用于网页数据的抓取、自动化操作和测试。它结合了 Selenium 和 Requests 的优点,提供了更简洁、高效的 API,适用于各种网页自动化任务。DrissionPage 是一个功能强大且易于使用的网页自动化工具,适用于各种网页自动化任务。希望本文的 DrissionPage 的基本使用方法和一些高级功能能够帮助到你。

数据知道的博客 1万+

2021年最有用的数据清洗 Python 库

大多数调查表明,数据科学家和数据分析师需要花费 70-80% 的时间来清理和准备数据以进行分析。对于许多数据工作者来说,数据的清理和准备也往往是他们工作中最不喜欢的部分,因此他们将另外 20-30% 的时间花在抱怨上,这虽然是一个玩笑,但是却很好的反应了数据清洗在数据分析工作当中的特殊地位 在平时的工作生活中,数据总是会出现某些不一致、缺失的输入、不相关的信息、重复的信息或彻头彻尾的错误等等情况。尤其是当数据来自不同来源时,每个来源都会有自己的一套怪癖、挑战和不规则之处。凌乱的数据是没有用处的,有时候甚至会

周萝卜的博客 503

066、AR 应用中虚拟物体漂移抖动?IMU 融合 + 光流追踪的视觉里程计优化方案

AR应用中虚拟物体漂移抖动优化方案 摘要:针对AR应用中虚拟物体漂移抖动问题,提出一种IMU融合与光流追踪的视觉里程计优化方案。关键点包括:1) 采用IMU预积分技术处理高频噪声,通过中值积分计算帧间相对运动约束;2) 使用金字塔LK光流追踪像素运动,通过中值偏差法剔除异常值;3) 构建10帧滑动窗口的紧耦合优化框架,将IMU预积分约束和光流重投影约束联合优化。实验表明,该方法有效解决了时间戳未对齐导致的"跳舞箭头"现象,在手机端实现稳定30fps的AR定位精度,漂移误差降低至厘米级。特别提醒:IMU与视觉

ai技术增长的博客 161

最新年底总结 2024年最有用的数据清洗 Python 库,面试建议

Python崛起并且风靡,因为优点多、应用领域广、被大牛们认可。学习 Python 门槛很低,但它的晋级路线很多,通过它你能进入机器学习、数据挖掘、大数据,CS等更加高级的领域。Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用…Python可以做的很多,你需要学好基础,再选择明确的方向。这里给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

2401_84138927的博客 903

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

2023年最有用的数据清洗 Python 库

我们的数据分析模型取决于我们输入的数据,并且我们的数据越干净,处理、分析和可视化就越简单,善于利用工具,会使我们的工作更加轻松愉快虽然上面总结的工具不可能包含所有的数据清洗工具,但是我们只要选择适合我们的就可以了,希望今天的分享能够帮助到你~

xx16755498986的博客 511

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

年终总结:2021年最有用的数据清洗 Python 库

大多数调查表明,数据科学家和数据分析师需要花费 70-80% 的时间来清理和准备数据以进行分析。对于许多数据工作者来说,数据的清理和准备也往往是他们工作中最不喜欢的部分,因此他们将另外 20-30% 的时间花在抱怨上,这虽然是一个玩笑,但是却很好的反应了数据清洗在数据分析工作当中的特殊地位在平时的工作生活中,数据总是会出现某些不一致、缺失的输入、不相关的信息、重复的信息或彻头彻尾的错误等等情况。尤其是当数据来自不同来源时,每个来源都会有自己的一套怪癖、挑战和不规则之处。凌乱的数据是没有用处的,有时候甚至会起

Python数据挖掘 441

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

年底总结 2021年最有用的数据清洗 Python 库,关于网络优化你必须要知道的重点

Pandas Matplotlib Datacleaner Dora Seaborn Arrow Scrubadub Tabulate Missingno Modin Ftfy SciPy Dabl Imblearn NumPy NumPy 是一个快速且易于使用的开源科学计算 Python 库,它也是数据科学生态系统的基础库,因为 Pandas 和 Matplotlib 等许多最流行的 Python 库都是建立在 NumPy 之上的 除了作为其他..

j25311的博客 337

年底总结 2024年最有用的数据清洗 Python 库

在前面,我们讨论了可视化数据以揭示数据缺陷和不一致的重要性。Datacleaner 是一个基于 Pandas DataFrame 的第三方库,虽然 Datacleaner 出现的时间比较短并且不如 Pandas 流行,但是,Datacleaner 有一种独特的方法,它结合了一些典型的数据清理功能并使其自动化,这为我们节省了宝贵的时间和精力。但是在我们拥有漂亮干净的数据之前,需要先了解凌乱数据中的问题,例如它们的种类和范围,然后才能对其进行有效的清理,这个操作的很大一部分取决于数据的准确和直观呈现的程度。

2401_83816794的博客 1011

Python 数据清洗库详解

数据清洗是数据分析的重要步骤,而Python提供了许多强大的库来简化和加速这一过程。本文介绍了几个最有用的数据清洗库,包括Pandas、Dask、NumPy和Pyjanitor。通过这些示例代码,你可以开始利用这些库清洗和预处理你的数据,确保它们准备好用于进一步的分析和建模。希望这些示例对你在数据清洗的旅程中有所帮助!

涛哥聊Python 1801

2026年GitHub上最值得学习的Python库

2026年GitHub上有很多值得学习的Python库,这些库涵盖了Web开发、数据科学、工具、DevOps、机器学习等多个领域。作为一个非科班转码者,我认为通过学习这些库,可以快速提升自己的Python技能,为就业和项目开发打下坚实的基础。同时,结合Rust的性能优势,可以进一步优化Python应用的性能,为开发高质量的应用提供保障。保持学习,保持输出。虽然现在我还是个菜鸡,但我相信只要坚持,总有一天能成为真正的「第一程序员」!

no1coder的博客 1万+

十个超有用的 Python 的库

对了,各位看官,小生才情有限,笔墨之间难免会有不尽如人意之处,还望多多包涵,不吝赐教。这里不仅有好玩的内容和知识等着你,还特别欢迎你畅所欲言,分享你的想法和见解。你可以把这里当作自己的家,无论是工作之余的小憩,还是寻找灵感的驿站,我都希望你能在这里找到属于你的那份快乐和满足。除了简单的色彩调整外,OpenCV还可以进行更加复杂的操作,如边缘检测、形状识别等,为开发者提供了无限可能的空间去探索图像背后的奥秘。

master_chenchen的博客 975
上一篇: 19岁「黑客」连续破解25辆特斯拉:远程控制门窗、灯光、音乐,还能直接开走...
下一篇: 没有50W彩礼 女友被强行拽走! Python分析全国彩礼情况,心凉了!
菜鸟学Python
博客等级 码龄9年 8086粉丝 571原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值