python使用Pandas库提升项目的运行速度过程详解-创新互联

前言

创新互联公司是一家专注于网站制作、网站建设与策划设计,长安网站建设哪家好?创新互联公司做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:长安等地区。长安做网站价格咨询:18982081108

如果你从事大数据工作,用Python的Pandas库时会发现很多惊喜。Pandas在数据科学和分析领域扮演越来越重要的角色,尤其是对于从Excel和VBA转向Python的用户。

所以,对于数据科学家,数据分析师,数据工程师,Pandas是什么呢?Pandas文档里的对它的介绍是:

“快速、灵活、和易于理解的数据结构,以此让处理关系型数据和带有标签的数据时更简单直观。”

快速、灵活、简单和直观,这些都是很好的特性。当你构建复杂的数据模型时,不需要再花大量的开发时间在等待数据处理的任务上了。这样可以将更多的精力集中去理解数据。

但是,有人说Pandas慢…

第一次使用Pandas时,有人评论说:Pandas是很棒的解析数据的工具,但是Pandas太慢了,无法用于统计建模。第一次使用的时候,确实如此,真的慢。

但是,Pandas是建立在NumPy数组结构之上的。所以它的很多操作通过NumPy或者Pandas自带的扩展模块编写,这些模块用Cython编写并编译到C,并且在C上执行。因此,Pandas不也应该很快的吗?

事实上,使用姿势正确的话,Pandas确实很快。

在使用Pandas时,使用纯“python”式代码并不是最效率的选择。和NumPy一样,Pandas专为向量化操作而设计,它可在一次扫描中完成对整列或者数据集的操作。而单独处理每个单元格或某一行这种遍历的行为,应该作为备用选择。

跟大家说明一下,本Python学习教程不是引导如何过度优化Pandas代码。因为Pandas在正确的使用下已经很快了。此外,优化代码和编写清晰的代码之间的差异是巨大的。

这是一篇关于“如何充分利用Pandas内置的强大且易于上手的特性”的指引。此外,你将学习到一些实用的节省时间的技巧。在这篇Python学习教程中,你将学习到:

  • ·使用datetime时间序列数据的优势
  • ·处理批量计算更效率的方法
  • ·利用HDFStore节省时间

这篇文章,耗电量时间序列数据将被用于演示本主题。加载数据后,我们将逐步了解更有效率的方法取得最终结果。对于Pandas用户而言,会有多种方法预处理数据。但是这不意味着所有方法都适用于更大、更复杂的数据集。

【注】

【工具】

Python 3、Pandas 0.23.1

任务:

本例使用能源消耗的时间序列数据计算一年能源的总成本。由于不同时间段的电价不同,因此需要将各时段的耗电量乘上对应时段的电价。

从CSV文件中可以读取到两列数据:日期时间和电力消耗(千瓦)

每行数据中都包含每小时耗电量数据,因此整年会产生8760(356×24)行数据。每行的小时数据表示计算的开始时间,因此1/1/13 0:00的数据指1月1号第1个小时的耗电量数据。

用Datetime类节省时间

首先用Pandas的一个I/O函数读取CSV文件:

>>z import pandas as pd
>>> pd.__version__
'0.23.1'
>>> df = pd.read_csv('文件路径')
>>> df.head()
 date_time energy_kwh
0 1/1/13 0:00 0.586
1 1/1/13 1:00 0.580
2 1/1/13 2:00 0.572
3 1/1/13 3:00 0.596
4 1/1/13 4:00 0.592

网页名称:python使用Pandas库提升项目的运行速度过程详解-创新互联
分享URL:http://azwzsj.com/article/jpjoo.html