datatable:比pandas更快的GB量级的库

栏目: 数据库 · 发布时间: 5年前

内容简介:虽然pandas是数据分析、机器学习等必备利器,但现在流行的机器学习应用训练模型动辄需要GB级别的数据,很多时候pandas无法快速读取大数据文件或者进行高效运算,甚至可能存在内存溢出等情况。如果是R语言的用户应该很熟悉data.table库, 该库是R语言中data.frame库的拓展库,可以让R语言用户轻松处理海量数据,比如让电脑很轻松高速地读取100Gb文件。现在python生态圈也有了自己的data.table,这个库的名字叫做datatable。目前datatable不支持windows系统,相应

虽然pandas是数据分析、机器学习等必备利器,但现在流行的机器学习应用训练模型动辄需要GB级别的数据,很多时候pandas无法快速读取大数据文件或者进行高效运算,甚至可能存在内存溢出等情况。

如果是R语言的用户应该很熟悉data.table库, 该库是R语言中data.frame库的拓展库,可以让R语言用户轻松处理海量数据,比如让电脑很轻松高速地读取100Gb文件。现在 python 生态圈也有了自己的data.table,这个库的名字叫做datatable。目前datatable不支持windows系统,相应的windows版本正在开发中。

datatable:比pandas更快的GB量级的库

一、读取数据

读取的数据先转化为Frame对象,是一种拥有很多行很多列的二维数组,功能类似于DataFrame或者 SQL 表。

我们用的测试数据来源于Kaggle的lending数据集 https://www.kaggle.com/wendykan/lending-club-loan-data#loan.csv, 该数据集包括2007-2015年的含有相关145个特征,共计226万条贷款记录。文件大概700M,我们可以使用pandas和datatable库分别读取,测试读取速度

Run

再来看看pandas读取

从上面两个读取方式看,pandas用时1分钟,而datatable用时14.2秒

二、 Frame转换

datatable读取数据可以转化为pd.DataFrame

正常来讲使用datatable读取数据再转化为pd.DataFrame格式 比 直接使用pandas读取要快一些。

三、基本的Frame属性

显示前10行

字段名的颜色表示数据类型,其中红色表示文本,绿色表示整数,蓝色表示浮点型。

四、描述性统计

在pandas中进行描述性统计是一件很吃内存的进程,但datatable不怕这事。

例如我们分别使用datatable和pandas来计算mean

因为会抛出内存错误,上面的 pandas_df.mean() 无法在pandas中完成,所以大邓将代码加上注释,防止大家运行崩溃。

五、数据操作

datatable:比pandas更快的GB量级的库

数据的操作方法与dataframe类似

5.1 数据选择

选中所有行, 列只选择funded_amnt列

5.2 排序

根据 funded_ amnt_ inv 列进行排序

CPU times: user 534 ms, sys: 67.96 ms, total: 602 ms                              

还别说,datatable一眨眼功夫就出来,排序真的很快

而pandas排序用了12.4s,慢!

5.3 删除列

删除指定列,如下。

5.4 条件筛选

条件筛选也跟dataframe很类似,这里要注意代码中的f代指的是Frame。输出的数据行列分别:

  • 所有的行中loan_ amnt要大于funded_ amnt

  • 只输出loan_amnt列

5.5 保存结果

总结

与鼎鼎大名的pandas相比,datatable有很高效的执行速度,这在处理大型数据集时肯定是一个福音。 然而就功能而言,datatable落后于pandas。 但由于datatable仍在更新迭代,我们可能会在未来看到该库的一些重要补充。

推荐阅读

【视频课】文本数据分析快速入门

2019Stata & Python 实证计量与爬虫分析暑期工作坊

国人开发的数据可视化神库 pyecharts

pandas_profiling:生成动态交互的数据探索报告

cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

使用Pandas、Jinja和WeasyPrint制作pdf报告

使用Pandas更好的做数据科学

使用Pandas更好的做数据科学(二)

少有人知的python数据科学库

folium:地图数据可视化库

学习编程遇到问题,该如何正确的提问?

100G 文本分析语料资源(免费下载)  

如何用Google Colab高效的学习Python

大神kennethreitz写出requests-html号称为人设计的解析库

flashtext:大规模文本数据清洗利器

datatable:比pandas更快的GB量级的库

如果想要获取更多例子,可以关注本公众号,

后台回复 ' 20190609 ' 获得本教程的notebook代码下载方式


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

HTML & XHTML

HTML & XHTML

Chuck Musciano、Bill Kennedy / O'Reilly Media / 2006-10-27 / GBP 39.99

"...lucid, in-depth descriptions of the behavior of every HTML tag on every major browser and platform, plus enough dry humor to make the book a pleasure to read." --Edward Mendelson, PC Magazine "Whe......一起来看看 《HTML & XHTML》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试