当前位置:首页 > TAG信息列表 > 应该如何提速?

应该如何提速?

python快速导入数据库用哪个 Python使用Pandas读取数据库很慢,应该如何提速?

python使用pandas读取数据库很慢,应该如何提速?

谢谢你邀请我!

熊猫编程库是数据科学社区的天赐之物。无论你问哪个数据科学家,他们是如何用python处理他们的数据集的,他们无疑都会谈到熊猫。

pandas是一个伟大的编程库的缩影。:简单、直观、多才多艺。

python快速导入数据库用哪个 Python使用Pandas读取数据库很慢,应该如何提速?

但是,要把数据科学家的熊猫数据框架计算上千次甚至上百万次,仍然是一个挑战。你可以不要只是在编写pythonfor循环语句时输入数据,并期望在合理的时间内处理数据。

pandas被设计为一次处理整个行或列的矢量化,在每个单元格、行或列中循环,但它不是为使用库而设计的。所以在使用熊猫的时候,要考虑高度并行化的矩阵运算方法。

本指南将教你如何使用熊猫,这是一个旨在使用和思考的矩阵操作。在这个过程中,我将向您展示一些实用且省时的技巧和诀窍,它们将使您的熊猫代码运行得比那些可怕的pythonforloops更快!

我们的设置

在本教程中,我们将使用经典的鸢尾花数据集。让开始滚动,用seaborn加载数据集,输入前5行。

现在让我们让我们构建一个基线,并用pythonforloop测量我们的速度。我们将通过循环遍历每一行来设置要在数据集上执行的计算,然后测量整个操作的速度。这将为我们提供一个基线,看看我们的新优化能在多大程度上帮助我们摆脱困境。

在上面的代码中,我们创建了一个基本函数,它使用了if-else语句。我们编写一个for循环,通过循环dataframe对每一行应用一个函数,然后测量循环的总运行时间。

在我的i7-8700k电脑上,循环5次平均需要0.01345秒。

循环语句。iterrows()

这是最简单但最有价值的方法,它可以加快。熊猫内置iterrows()函数。

在上一节编写for循环时,我们使用了range()函数。然而,当我们在python中循环大量的值时,生成器通常要快得多。在本文中,您可以阅读更多关于发电机如何工作并使其运行更快的信息。

潘朵拉s.iterrows()函数在内部实现了一个生成器函数,它将在每次迭代时生成一行dataframe。更具体地说,。iterrows()为dataframe中的每一行生成(index,series)元组。这实际上与原始pyt中的相同类似enumerate()这样的东西在hon中也是一样的,但是运行起来要快得多。

接下来,我们修改了代码以使用。iterrows()而不是常规的for循环。在我上一节测试的同一台机器上,平均运行时间是0.005892秒——快了2.28倍!

使用。apply()完全删除循环。

的。iterrows()函数给我们带来了巨大的速度,但是我们还远远没有完成。永远记住,当使用为向量操作设计的库时,可能有一种方法可以在不使用for循环的情况下最有效地完成任务。

熊猫函数为我们提供了这个函数。apply()函数。our()接受另一个函数作为它的输入,并沿着轴(行、列等)应用它。)的数据帧。以我们的传递函数为例,lambda通常可以方便地将所有东西打包在一起。

在下面的代码中,我们用。应用()和lambda函数来封装我们想要的计算。在我的机器上,这段代码的平均运行时间是0.0020897秒,比我们原来的for循环快6.44倍。

apply()之所以这么快,是因为它在内部尝试了cython迭代器。如果你的函数恰好是为cython优化的,那么。apply()会给你带来更快的速度。一个额外的好处是,使用内置函数可以生成更干净、更易读的代码。

最后

正如我前面提到的,如果您使用的是为矢量化而设计的库,您应该总是寻找一种不使用for循环的计算方法。

同样,也有很多这样设计的库,包括熊猫,会有方便的内置函数,可以进行你要找的精确计算,而且会更快。

的。熊猫的cut()函数定义了一组bin作为输入,这些bin定义了if-else的每个范围和每组标签,这些标签定义了每个范围返回的值。然后,它执行与我们使用compute_class()函数手工编写的操作完全相同的操作。

查看下面的代码以了解如何操作。cut()有效。我们又一次获得了代码更清晰、可读性更好的好处。最后是。cut()函数平均运行0.001423秒,比原来的for循环快9.39倍!

更多关于人工智能的资讯、深度报道、访谈,欢迎关注ai。不管你是小白还是大神,你想要的在这里都有!

电脑能同时安装python数据库和java数据库么?

数据库中没有语言区分。

常用的数据库有mysql、oracle等。

你只需要在电脑上安装一个数据库,那么python和jav。可以使用。

it只是连接到数据库的方法不同。

函数数据熊猫代码iterrows


豆豆号 万景网

  • 关注微信关注微信

猜你喜欢

热门标签

acid7.0安装教程 Excel怎么做二维码 植物鉴定软件 cad画框怎么画 word文档翻译成中文 荣耀magic3至臻版上市价格 oppo手机屏上下不一个颜色咋回事 如何快速修改ppt统一字体大小 苹果手机和平板相册怎么取消同步 word文档删除页眉的一根线 半导体激光器泵浦源特性测量实验 个人中心数据授权在哪里如何授权银行查我的公积金?介绍 ppt怎么做才能按一下出来一行文字 微信8.0.31版本打开的文件在哪里微信文件存储位置与打开操作 华为手机自带的歌曲在哪里找华为手机全民k歌下载的歌曲哪里去?介绍 小米妙享中心电脑版 抖音怎么关闭推荐那一栏怎么关闭图片分享里的抖音? 微信截图删除了如何找回来 华为充电慢是什么原因造成的 电视oled和qled哪个好 怎么查看自己的显示器配置荣耀怎么看屏幕品牌?介绍 如何编辑一个1到100求和的c程序用C语言写个程序1到10000相加的结果怎么写啊?介绍 搜索引擎营销是指基于搜索引擎平台的付费推广 ppt幻灯片自动播放 电脑上方逗号怎么输入电脑上逗号是哪个键? wps表格怎么横向截长图wps怎么横向自动填充星期几? ios录音转文字苹果想要将语音消息转换成文字如何进行?介绍 抖音剪辑怎么添加画中画效果剪映怎么把画中画变成圆形?介绍 ipad如何设置壁纸 设置边框颜色的具体操作步骤wps表格怎么把框线加深?介绍

微信公众号