超实用!整理了34个Python自动化办公库!

熬了半宿,整理了 34 个 Python 自动化办公库! 阅读详情
来源:牛稳稳

本次内容涵盖了Excel、Word、PPT、ODF、PDF、邮件、微信、文件处理等所有能在办公场景实现自动化的库,希望能够对大家有所帮助。

Python

Excel自动化库

//  1.xlwings 库

官网:

https://www.xlwings.org/

特点:xlwings 是开源且免费的,预装了 Anaconda 和 WinPython,可在 Windows 和 macOS 上运行。通过 Python 脚本或 Jupyter notebook 自动化 Excel,通过宏从 Excel 调用 Python,并编写用户定义的函数(UDF 仅适用于 Windows)

//  2.openpyxl 库

官网:

https://openpyxl.readthedocs.io

特点:openpyxl 是一个用于读取 / 编写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的 Python 库。它是由于缺乏从 Python 中读取 / 编写 Office Open XML 格式的现有库而诞生的。

//  3.xlrd 库

官网:

https://pypi.python.org/pypi/xlrd

特点:在 python 中,xlrd 库是一个很常用的读取 excel 文件的库,其对 excel 文件的读取可以实现比较精细的控制。

//  4.xlwt 库

官网:

https://pypi.org/project/xlwt/

特点:类比于 xlrd 的 reader,那么 xlwt 就相对于 writer,而且很纯正的一点就是它只能对 Excel 进行写操作。xlwt 和 xlrd 不光名字像,连很多函数和操作格式也是完全相同。

//  5.xlutils 库

官网:

https://pypi.org/project/xlutils/

特点:xlutils(excel utilities)是一个提供了许多操作修改 excel 文件方法的库。xlutils 库也仅仅是通过复制一个副本进行操作后保存一个新文件,xlutils 库就像是 xlrd 库和 xlwt 库之间的一座桥梁,因此,xlutils 库是依赖于 xlrd 和 xlwt 两个库的。

//  6.xlsxwriter 库

官网:

https://xlsxwriter.readthedocs.io/

特点:xlsxwriter 是用于创建 Excel XLSX 文件的 Python 模块,可用于将文本、数字、公式和超链接写入 Excel2007 + XLSX 文件中的多个工作表。它支持格式化等功能。可以说除了 Excel 本身,就属这个功能最齐全了。

//  7.pandas 库

官网:

https://www.pypandas.cn/docs/

特点:pandas 是基于 NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。

//  8.Marmir 库

官网:

https://github.com/brianray/mm

特点:Marmir 采用 Python 数据结构并将其转换为电子表格。它是类固醇上的 xlwt 和 google 电子表格。目标是使用最少的配置轻松生成多种类型的有用表文件。

Python

Word自动化库

//  9.python-docx 库

官网:

https://python-docx.readthedocs.io/en/latest/

特点:python-docx 是一个用于创建和更新 Microsoft Word (.docx) 文件的 Python 库。快速开始、处理文档、处理文本、使用截面、使用页眉和页脚、API基础理、解样式、使用样式理解图片和其他形状。只对 windows 平台有效。

//  10.textract 库

官网:

https://gitee.com/mirrors/textract

特点:它同时兼顾 “doc” 和 “docx”,但安装过程需要一些依赖。你可以批量的用 python 生成 word 文件,推荐使用 docx,不需要会太多。

Python

PPT自动化库

//  11.python-pptx 库

官网:

https://python-pptx.readthedocs.io

特点:python-pptx 是一个用于创建和更新 PowerPoint (.pptx) 文件的 Python 库。典型用途是从数据库内容生成自定义 PowerPoint 演示文稿,可通过单击 Web 应用程序中的链接下载。

Python

ODF自动化库

//  12.Relatorio 库

官网:

https://pypi.org/project/relatorio/

特点:Relatorio 是一个模板库,它提供了一种轻松输出多种文件(odt、ods、png、svg 等)的方法。通过为它们创建插件可以轻松添加对更多文件类型的支持。Relatorio 还提供了一个报告存储库,允许您将 python 对象和报告链接在一起,按 mimetype/name/python 对象查找报告。ODF:开放文档格式(外文名:OpenDocument Format,外语简称:ODF)是一种规范,基于 XML(标准通用标记语言的子集)的文件格式,因应试算表、图表、演示稿和文字处理文件等电子文件而设置。

Python

PDF自动化库

//  13.PyPDF2 库

官网:

https://github.com/mstamy2/PyPDF2

特点:PyPDF2 是一个纯 Python PDF 库,能够拆分、合并、裁剪和转换 PDF 文件的页面。它还可以向 PDF 文件添加自定义数据、查看选项和密码。它可以从 PDF 中检索文本和元数据,也可以将整个文件合并在一起。

//  14.ReportLab 库

官网:

https://www.reportlab.com/opensource/

特点:ReportLab 是久经考验、超强大的开源引擎,用于创建复杂的、数据驱动的 PDF 文档和自定义矢量图形。它是免费的、开源的,并且是用 Python 编写的。

//  15.PDFminer 库

官网:

https://github.com/euske/pdfminer

特点:PDFMiner 是一款用于 PDF 文档的文本提取工具。

Python

邮件自动化库

//  16.Django Celery SES 库

官网:

https://github.com/StreetVoice/django-celery-ses

特点:这个包提供了一个 EmailBackend 来利用 django-celery 发送电子邮件。您可以将 EmailBackend 插入您的项目中,而无需对代码进行任何修改。

//  17.Envelopes 库

官网:

http://tomekwojcik.github.io/envelopes/

特点:Envelopes 是 Python 的电子邮件和 smtplib 模块的包装器。它旨在使在 Python 中处理外发电子邮件变得简单而有趣。

//  18.Flanker 库

官网:

https://github.com/mailgun/flanker

特点:由 mailgun 开源的 Flanker - email address and MIME parsing for Python 是一个解析高效、容错率不错的 python 第三方扩展库。python 3 也可以正常使用,该库包含了邮件地址解析和邮件 mime 格式解析。

//  19.imbox 库

官网:

https://github.com/martinrusev/imbox

特点:用于读取 IMAP 邮箱并将电子邮件内容转换为机器可读数据的 Python 库

//  20.inbox.py 库

官网:

https://github.com/billzhong/inbox.py

特点:这是您见过的最简单的 SMTP 服务器。它是异步的。一个实例每秒应该处理一千多封电子邮件。

//  21.sync-engine 库

官网:

https://github.com/nylas/sync-engine

特点:Nylas 同步引擎在强大的电子邮件同步平台之上提供了一个 RESTful API,可以轻松地在电子邮件之上构建应用程序。

//  22.Lamson 库

官网:

https://github.com/zedshaw/lamson

特点:Lamson 是一个纯 Python SMTP 服务器,旨在以现代 Web 框架(如 Django)的风格创建强大而复杂的邮件应用程序。

//  23.Marrow Mailer 库

官网:

https://github.com/marrow/mailer

特点:Marrow Mailer 是一个 Python 库,可以轻松地从您的应用程序发送电子邮件。通过使用 Marrow Mailer,您可以:轻松构建纯文本和 HTML 电子邮件;提高电子邮件传递的可测试性;使用不同的邮件投递管理策略;例如立即,延迟,甚至多服务器等。

//  24.Modoboa 库

官网:

https://github.com/modoboa/modoboa

特点:Modoboa 是一个邮件托管和管理平台,包括一个现代和简化的 Web 用户界面。它提供了有用的组件,例如管理面板或网络邮件。

//  25.smtplib 库

官网:

https://docs.python.org/zh-cn/3/library/smtplib.html

特点:smtplib 模块是 python 中 smtp (简单邮件传输协议) 的客户端实现。我们可以使用 smtplib 模块,轻松的发送电子邮件。

Python

微信自动化库

//  26.Python wxpy 库

官网:

https://wxpy.readthedocs.io/zh/latest/

特点:微信机器人/可能是最优雅的微信个人号API,wxpy 在 itchat 的基础上,通过大量接口优化提升了模块的易用性,并进行丰富的功能扩展。

Python

文件处理自动化库

//  27.os 库

官网:

https://docs.python.org/zh-cn/3/library/os.html?highlight=os#module-os

特点:本模块提供了一种使用与操作系统相关的功能的便捷式途径。如果你只是想读写一个文件,请参阅 open(),如果你想操作文件路径,请参阅 os.path 模块,如果你想读取通过命令行给出的所有文件中的所有行,请参阅 fileinput 模块。为了创建临时文件和目录,请参阅 tempfile 模块,对于高级文件和目录处理,请参阅 shutil 模块。

Python

综合功能自动化库

//  28.win32com 库

官网:

https://pypi.org/project/pywin32/

特点:win32com 模块主要为 Python 提供调用 windows 底层组件对 word 、Excel、PPT 等进行操作的功能,只能在 Windows 环境下使用,并且需要安装 office 相关软件才行(WPS 也行)。

//  29.unoconv 库

官网:

https://github.com/unoconv/unoconv

特点:是一个命令行工具,可以将 LibreOffice 可以导入的任何文档格式转换为 LibreOffice 可以导出的任何文档格式。它利用 LibreOffice 的 UNO 绑定进行文档的非交互式转换,也支持 OpenOffice。

//  30.Tablib 库

官网:

https://www.osgeo.cn/tablib/

特点:Python tablib 模块是第三方模块,主要作用是将数据导出为各种不同的格式,包括 excel,json,html,yaml,csv,tsv 等格式,怎么样,有点心动了吧,当然这个模块使用起来也是超级简单的。

//  31.SnowNLP 库

官网:

https://github.com/isnowfy/snownlp

特点:SnowNLP 是一个 python 写的类库,可以方便的处理中文文本内容,是受到了 TextBlob 的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的类库,并且和 TextBlob 不同的是,这里没有用 NLTK,所有的算法都是自己实现的,并且自带了一些训练好的字典。注意本程序都是处理的 unicode 编码,所以使用时请自行 decode 成 unicode。

//  32.TextBlob 库

官网:

https://textblob.readthedocs.io

特点:TextBlob 是一个用于处理文本数据的 Python(2 和 3)库。它提供了一个简单的 API,用于深入研究常见的自然语言处理 (NLP) 任务,例如词性标注、名词短语提取、情感分析、分类、翻译等。

//  33.TextGrocery 库

官网:

https://textgrocery.readthedocs.io

特点:TextGrocery 是一个基于 LibLinear 和结巴分词的短文本分类工具,特点是高效易用,同时支持中文和英文语料。

//  34.NumPy 库

官网:

https://www.numpy.org.cn/

特点:NumPy 是 Python 中科学计算的基础包。它是一个 Python 库,提供多维数组对象,各种派生对象(如掩码数组和矩阵),以及用于数组快速操作的各种 API,有包括数学、逻辑、形状操作、排序、选择、输入输出、离散傅立叶变换、基本线性代数,基本统计运算和随机模拟等等。


觉得还不错就给我一个小小的鼓励吧!


ABAP Cloud:面向云时代的 ABAP 开发范式与实践指南 摘要: 本文系统讲解SAP ABAP Cloud开发模型,涵盖其架构、工具链、规范及实践。ABAP Cloud作为统一开发模型,支持在SAP BTP和S/4HANA上构建云就绪应用,遵循clean core原则,通过RAP(RESTful应用编程模型)实现低耦合扩展。文章详细解析其核心构成(RAP、稳定API、clean core约束)、工具链(ADT、软件物流)及两种典型扩展场景(on-stack与side-by-side),并附可运行RAP示例代码(如销售笔记应用)。重点强调通过规范开发确保系统可升级性 阅读详情

相关推荐

USB的24脚和12脚TYPEC引脚定义

USB 是一种接口,用于将设备连接到计算机上。通过该连接,计算机可以向设备发送数据或检索来自设备的数据。USB 为开发者提供了一个标准接口,适用于多种不同类型的应用。借助于系统的设计过程,USB 设备易于连接和使用。本应用笔记会使该过程变得更加简单。以下是本应用笔记中会使用的概念:USB 历史USB 架构USB 物理接口USB 速度USB 电源USB 端点USB 通信协议USB 描述符USB 类设备USB 枚举与配置过程。

易板 1万+

深度盘点丨史上最全的Python自动化办公库(34个)

大家好,我是程序员晚枫。 今天继续给大家分享我花了将近2周时间整理的Python自动化办公库。 本次内容涵盖了Excel、Word、PPT、ODF、PDF、邮件、微信、文件处理等所有能在办公场景实现自动化的库,希望能够对大家有所帮助, 同时也希望小伙伴们在看后能在评论区发表自己的不同意见,对不好的或者需要补充的内容加以指正, 我会不断完善改进,力求能帮助到所有支持和喜爱社区的小伙伴们! 话不多说,我们开始吧!! 以下所有库,都可以通过:pip install p

weixin_64843653的博客 3018

C51:PWM+舵机角度控制

PWM,英文名Pulse Width Modulation,是脉冲宽度调制缩写,它是通过对一系列脉冲的宽度进行调制,等效出所需要的波形(包含形状以及幅值),对模拟信号电平进行数字编码,也就是说通过调节占空比的变化来调节信号、能量等的变化,占空比就是指在一个周期内,信号处于高电平的时间占据整个信号周期的百分比,例如方波的占空比就是50%.脉冲宽度调制通过占空比编码模拟信号一个周期内,高电平占据时长的百分比如下图所示,最便宜的舵机sg90,常用三根或者四根接线,黄色为PWM信号控制。

qq_73379310的博客 3390

最新熬了半宿,整理了 34 个 Python 自动化办公库!_marmir库

Python 在自动化办公领域越来越受欢迎,批量处理简直是加班族的福利。今天给大家分享34个的Python自动化办公库,

2401_84692253的博客 1009

STM32笔记:高精度脉冲宽度计 双输入捕获+DMA方式

本文介绍如何用STM32F107VC实现高精度的脉冲宽度计(测量周期脉冲的占空比)。 采用定时器的外部输入捕获功能,双输入+DMA方式,追求硬件的极限表现。

st01lsp的专栏 5289

自适应滤波算法综述

自适应滤波算法综述

xdzhujy的博客 5万+

整理了34个Python自动化办公库!需要的时候方便找

本次内容涵盖了Excel、Word、PPT、ODF、PDF、邮件、微信、文件处理等所有能在办公场景实现自动化的库,我找了些资料然后整理了下。 Python Excel自动化库 1.xlwings 库 官网: https://www.xlwings.org/ 特点:xlwings 是开源且免费的,预装了 Anaconda 和 WinPython,可在 Windows 和 macOS 上运行。通过 Python 脚本或 Jupyter notebook 自动化 Excel,通过宏从 Excel 调用 Pyth

qq_35120460的博客 1052

概率论与数理统计基础概念与重要定义汇总

文章目录一、随机事件和概率1:互斥,对立,独立事件的定义和性质。2:概率,条件概率和五大概率公式3:古典型,几何型概率和伯努利试验 一、随机事件和概率 1:互斥,对立,独立事件的定义和性质。 互斥事件\color{red}\textbf{互斥事件}互斥事件 事件A和B的交集为空,A与B就是互斥事件,也叫互不相容事件。也可叙述为:不可能同时发生的事件。如A∩B为不可能事件(A∩B=Φ),那么称事件A与事件B互斥,其含义是:事件A与事件B在任何一次试验中不会同时发生。 则P(A+B)=P(A)+P(B)(这个公

csyifanZhang的博客 1万+

熬了半宿,整理了 34 个 Python 自动化办公库

很多非 IT 职场人士面临这样的困惑,想把 python 用到工作中,却不知如何下手? Python 在自动化办公领域越来越受欢迎,批量处理简直是加班族的福利。今天给大家分享34个的Python自动化办公库,喜欢欢迎收藏、关注,有所收获点赞支持。本次内容涵盖了Excel、Word、PPT、ODF、PDF、邮件、微信、文件处理等所有能在办公场景实现自动化的库,希望能够对大家有所帮助。// 1.xlwings 库官网:https://www.xlwings.org/特点:xlwings 是开源且免费的,预装了

weixin_55154866的博客 2778

微信小程序 - 解决支付报错 requestPayment:fail access denied (微信支付提示错误requestPayment:拒绝访问失败,真机运行测试或打包编译上线后报错问题)

微信小程序,微信支付,wx.requestPayment,微信小程序支付报错requestPayment:fail access denied,调不起微信,无法唤起支付弹窗,支付失败,支付权限没问题,小程序上线后支付报错,小程序真机测试支付报错,微信小程序苹果ios系统手机无法支付,小程序发布上线后支付报错,本地测试没问题,拒绝访问失败,小程序调起支付API requestPayment:fail:access denied微信开发者工具正常支付,权限没问题,微信公众平台,依旧报错怎么办,检查了appid都

🏆 前端领域优质创作者 1万+

ZYNQ BRAM实现PS与PL数据交互

有时CPU需要与PL进行小批量的数据交换,可以通过BRAM模块,也就是Block RAM实现此要求。本章通过Zynq的GP Master接口读写PL端的BRAM,实现与PL的交互。在本实验中加入了自定义的FPGA程序,并利用AXI4总线进行配置,通知其何时读写BRAM。以下为本实验原理图,CPU通过AXI BRAM Controller读取BRAM数据,CPU仅配置自定义的PL BRAM Controller 的寄存器,不通过它读写数据。

baidu_34971492的博客 2283

熬了半宿,整理了 34 个 Python 自动化办公库!_marmir库

Python 在自动化办公领域越来越受欢迎,批量处理简直是加班族的福利。今天给大家分享34个的Python自动化办公库,

2401_84140485的博客 221

ROS与Qt5人机交互界面开发:添加rviz显示界面

最后,点击"完成"以创建新的Qt5应用程序项目。通过结合ROS和Qt5,您可以创建强大的人机交互界面,以实现丰富的机器人控制和数据可视化。在本教程中,我们将在主窗口中创建一个简单的按钮,用于启动rviz显示界面。在Qt Creator的槽函数编辑器中,为按钮添加一个槽函数,该函数将在单击按钮时调用。在上面的代码中,我们使用QProcess类启动了一个新的进程,并执行"rviz"命令来启动rviz显示界面。当您单击Qt5应用程序中的按钮时,将会启动一个新的rviz窗口,显示机器人数据的可视化界面。

CodeJolt的博客 2067

熬了半宿,整理了 34 个 Python 自动化办公库_openpyxl官网(1)

如果你也是看准了Python,想自学Python,在这里为大家准备了丰厚的免费学习大礼包,带大家一起学习,给大家剖析Python兼职、就业行情前景的这些事儿。

2401_84140485的博客 1052

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

熬了半宿,整理了 34 个 Python 自动化办公库_openpyxl官网

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

m0_60666841的博客 1121

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

超全!整理了34个自动化办公库!

相关阅读:一个90后员工猝死的全过程来源:公众号牛稳稳 本次内容涵盖了Excel、Word、PPT、ODF、PDF、邮件、微信、文件处理等所有能在办公场景实现自动化的库,希望能够对大家有所...

Java和Android架构 404

深度学习工具包 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&#39;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(&#39;DeepLearnToolbox&#39;));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(&#39;state&#39;,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&#39;); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand(&#39;state&#39;,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 = &#39;sigm&#39;;%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, &#39;Too big error&#39;);```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(&#39;state&#39;,0)sae = saesetup([784 100]);sae.ae{1}.activation_function = &#39;sigm&#39;;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)&#39;)% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;;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, &#39;Too big error&#39;);```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x&#39;,28,28,60000))/255;test_x = double(reshape(test_x&#39;,28,28,10000))/255;train_y = double(train_y&#39;);test_y = double(test_y&#39;);%% 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&#39;ll get around 1.2% errorrand(&#39;state&#39;,0)cnn.layers = { struct(&#39;type&#39;, &#39;i&#39;) %input layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 6, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 2) %sub sampling layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 12, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 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, &#39;Too big error&#39;);```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(&#39;state&#39;,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, &#39;Too big error&#39;);%% ex2 neural net with L2 weight decayrand(&#39;state&#39;,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, &#39;Too big error&#39;);%% ex3 neural net with dropoutrand(&#39;state&#39;,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, &#39;Too big error&#39;);%% ex4 neural net with sigmoid activation functionrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;; % 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, &#39;Too big error&#39;);%% ex5 plotting functionalityrand(&#39;state&#39;,0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = &#39;softmax&#39;; % 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, &#39;Too big error&#39;);%% 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(&#39;state&#39;,0)nn = nnsetup([784 20 10]); nn.output = &#39;softmax&#39;; % 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, &#39;Too big error&#39;);```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

整理了 34 个 Python 自动化办公库

以下文章来源于Python自动化办公社区作者牛稳稳今天继续给大家分享2周时间整理的Python自动化办公库。本次内容涵盖了Excel、Word、PPT、ODF、PDF、邮件、微信、文件处...

lsxxx2011的专栏 409

Python 自动化办公库清单 (共34个),Python面试自我介绍

xlutils 库也仅仅是通过复制一个副本进行操作后保存一个新文件,xlutils 库就像是 xlrd 库和 xlwt 库之间的一座桥梁,因此,xlutils 库是依赖于 xlrd 和 xlwt 两个库的。现在能在网上找到很多很多的学习资源,有免费的也有收费的,当我拿到1套比较全的学习资源之前,我并没着急去看第1节,我而是去审视这套资源是否值得学习,有时候也会去问一些学长的意见,如果可以之后,我会对这套学习资源做1个学习计划,我的学习计划主要包括规划图和学习进度表。它支持格式化等功能。

2301_76190858的博客 641
上一篇: 知乎 | 博士生应该采取什么策略读文献?
下一篇: 我做算法工作的小反思!
Wang_AI
博客等级 码龄12年 997粉丝 162原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值