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

招聘网站建设公司张掖市作风建设年活动网站

招聘网站建设公司,张掖市作风建设年活动网站,做电影视频网站赚钱嘛,wordpress修改网页端口在使用 pandas 的 read_excel 函数读取大型工作簿的多张工作表时,你会发现这个过程会花很长时间。这是因为 pandas 会逐张读取工作表。要想让这个过程更快,可以并行读取这些工作表。让工作簿写入过程并行化很难,但并行读取多张工作表是很容易…

在使用 pandas 的 read_excel 函数读取大型工作簿的多张工作表时,你会发现这个过程会花很长时间。这是因为 pandas 会逐张读取工作表。要想让这个过程更快,可以并行读取这些工作表。让工作簿写入过程并行化很难,但并行读取多张工作表是很容易的。

在 Python 中,如果想充分利用现代计算机都具备的多核处理器,就需要使用标准库中的多线程包。多线程包会生成多个并行执行任务的 Python 解释器(通常一个 CPU 核心一个解释器)。此时不再是逐张处理工作表,而是一个 Python 解释器处理第一张工作表,与此同时另一个 Python 解释器处理第二张工作表,以此类推。

对于包含多个大型工作簿的大型文件的情况,多线程可以显著加快读取过程,不过这是在假定你的系统有足够的内存处理工作负载的情况下。


一 使用 parallel_pandas.py 并行读取工作表

parallel_pandas.py,这是使用 OpenPyXL 并行读取工作表的一种简单实现方式。(里面有两个函数:_read_sheet 和 read_excel)
链接: https://pan.baidu.com/s/1nIBGqVkXFj-fZCBPVWN8eg?pwd=68q2 提取码: 68q2 

# 1.pyimport parallel_pandasdef main():a = parallel_pandas.read_excel("xl/stores.xlsx", sheet_name=None)print(a)if __name__ == '__main__':main()

parallel_pandas.read_excel(filename, sheet_name=None):调用了parallel_pandas模块中的read_excel函数。filename是你要读取的Excel文件的路径。sheet_name=None表示你想读取Excel文件中的所有工作表。如果你只想读取特定的工作表,可以提供一个工作表名称的列表作为sheet_name参数的值。

read_excel函数返回一个字典,其中键是工作表的名称,值是与该工作表对应的pandas.DataFrame对象。例如,如果你的Excel文件包含名为"Sheet1"和"Sheet2"的两个工作表,函数将返回一个类似于{"Sheet1": df1, "Sheet2": df2}的字典,其中df1df2分别是这两个工作表对应的DataFrame。


二 两种魔法指令

魔法指令是特定于 Jupyter Notebook 等环境的一种特殊命令,用于提供便捷的功能。它们通常以 % 或 %% 开头。单个 % 前缀的魔法指令应用于单行代码,而双 %% 前缀的魔法指令应用于整个代码单元格。

1.%%time

用途:测量整个代码单元格的执行时间。

真实时间(wall time):从代码开始执行到结束所经过的总时间。这包括了代码运行期间的所有等待时间,比如等待CPU或其他资源。

CPU时间(在macOS或Linux系统上可用):这包括用户模式(user)和系统模式(sys)下的CPU时间,以及总CPU时间。用户模式时间是指CPU在用户程序上花费的时间,而系统模式时间是指CPU在操作系统内核中花费的时间。CPU时间可能比真实时间短(如果CPU资源不足,程序需要等待)或长(如果程序利用多核处理器并行执行)。

2.%%timeit

用途:更准确地测量代码的执行时间。

适用场景:当你需要更精确地了解代码性能时。

3. %%time  %%timeit 的区别

%%time适用于快速查看代码执行的大致时间,而%%timeit则提供更精确的性能测量,通过多次执行并取平均值来减少误差。


三 体验并行读取 big.xlsx 

如果你正在处理Excel文件(无论是较新的.xlsx格式还是旧式的.xls格式),并且你希望加快处理速度,有一种方法是将文件读取和处理过程并行化。

parallel_openpyxl.py:这个脚本实现了使用 OpenPyXL 库并行化读取和处理 .xlsx 格式文件的功能。通过并行化OpenPyXL的使用,你可以绕过Pandas库(Pandas通常用于数据处理,但会先将数据加载到DataFrame中,这可能会成为性能瓶颈),直接从Excel文件中读取和处理数据,从而可能提高速度。

parallel_xlrd.py:这个脚本是针对旧式的.xls格式文件,使用xlrd库实现并行化读取。通过并行化xlrd的使用,你可以直接处理.xls文件中的数据,而不需要先通过Pandas将其转换为DataFrame。

通过并行化读取和处理Excel文件的过程,并直接使用底层的库而不是Pandas,可以提升处理Excel数据的代码的运行速度。

通过直接使用这些底层的库(OpenPyXL和xlrd),你可以避免Pandas在处理大量数据时可能带来的性能开销,因为Pandas在读取Excel文件时,会先将整个文件加载到内存中,形成一个DataFrame对象,这个过程可能会比较耗时。而直接使用OpenPyXL或xlrd,你可以更灵活地处理数据,比如按需读取数据行或列,以及应用必要的清理过程(如去除空白行、转换数据类型等),这些操作都可以并行执行,从而可能显著提高整体处理速度。


四 只需读取单张大型工作表

使用 Modin 并行读取工作表,并行处理单张工作表的读取过程,并实现显著的速度提升。

Modin 需要指定版本的 pandas,安装 Modin 时可能会导致 Anaconda 附带的 pandas 被降级。

http://www.dtcms.com/a/583521.html

相关文章:

  • 网站建设大作业选题免费ppt模板可编辑
  • 国内网站建设建设峨边网站建设
  • 顺序表vector--------练习题7题解
  • 网站建设含义六盘水网络推广
  • 江北网站制作制作网页用什么语言
  • 校园视频网站建设房地产开发公司账务处理流程
  • 给网站做维护是什么工作关注公众号一单一结兼职app
  • 子午谷网站建设百度投诉中心24小时电话
  • 今日行情明日机会——20251107
  • 做网页怎么在网站播放视频网站设计岗位的职责与要求
  • 毕设网站淘宝指数查询工具
  • 如何使用Python高效转换Excel到HTML
  • 网站实施就是网站建设网站设计所需要的理念
  • MySQL 基础完全指南(视频教程)
  • Linux-第四章web服务
  • 银川建设网站公司经典重庆论坛上不了了
  • 中山建网站找哪家网上商城网站建设方案
  • 做产品网站建设百度官网app
  • 新商盟显示 检查网站开发错误呢中国招标信息公开网
  • SQL表设计与约束教程
  • xampp可以做网站吗网络安全管理平台
  • C语言--函数(function)
  • 做队徽的网站简单的个人网页制作html
  • pos机网站模板中国建设银行app官网
  • 学做效果图网站有哪些戴尔网站建设
  • 建设部网站怎么查询相关专业湖南省郴州市天气
  • 校园服装网站建设演示文稿永州微网站建设
  • 上犹网站建设企业网站怎么制作
  • 建材在哪些网站做介绍西安网页设计
  • 如何制作手机商城网站视频背景做网站背景