首页 快讯正文

联博以太坊高度:【谣言大揭秘】Modin真的比pandas运行更快吗?

admin 快讯 2020-05-25 13 0

最近看了某民众号文章,推荐了所谓的神器,听说读取速率吊打pandas,可谓牛逼。

抱着学习的精神,网上搜了文章,发现了一些眉目,事实真是这样吗?来一起揭秘真相。

  • 首先安装包
# pip install ray
# pip install dask
# pip install modin
  • 安装版本
Successfully installed aiohttp-3.6.2 async-timeout-3.0.1 google-2.0.3 multidict-4.7.6 py-spy-0.3.3 ray-0.8.5 redis-3.4.1 yarl-1.4.2
Requirement already satisfied: dask in /Applications/anaconda3/lib/python3.7/site-packages (2.11.0)
Successfully installed modin-0.7.3 pandas-1.0.3
Successfully uninstalled ray-0.8.5
Successfully installed pyarrow-0.16.0 ray-0.8.4
  • 导入包测试
import modin.pandas as pd

# ImportError: Please `pip install modin[ray]` to install compatible Ray version.
# 首次报错
# pip install modin[ray]

  • 第二次运行

弹窗,点允许,哈哈  # 您要应用程序“redis-server”接受传入网络连接吗?

modin.pandas: 76.71852612495422
import time
import modin.pandas as pd

start = time.time()
#Taxi_Trips(正式).csv 5.38G
df = pd.read_csv(r'/Users/dugh/Desktop/芝加哥市出租车行车纪录(2013年至今)/Taxi_Trips(正式).csv')
end = time.time()
print(end-start)

   pandas:  71.43032503128052

import time
import pandas as pd

start = time.time()
#Taxi_Trips(正式).csv 5.38G
df = pd.read_csv(r'/Users/dugh/Desktop/芝加哥市出租车行车纪录(2013年至今)/Taxi_Trips(正式).csv')
end = time.time()
print(end-start)
  • 第一轮(5.38G):pandas胜出 5 秒

 

  • 第二轮(680.9M):pandas 胜出 3 秒

  • 第三轮(3G):pandas胜出 11 秒

  • 修改设置

文章说:若是待操作的数据文件远大于电脑内存RAM,可以设置,那就设置再运行一遍吧

# 若是待操作的数据文件远大于电脑内存RAM,可以设置
import os
os.environ["MODIN_OUT_OF_CORE"]='true'
import modin.pandas as pd

验证下是不是,我设置问题

 -----------------------------分割线--------------------------------

  • 第一轮(5.38G):pandas胜出 2 秒

  • 第二轮(680.9M):pandas 胜出 3 秒

  • 第三轮(3G):pandas胜出 12 秒

  

  •  总结:

通过差别的文件花样和文件巨细,pandas均比modin快,尤其在h5大文件下,快了快要一半。

真的有那么神奇吗?

就算后面改了设置,modin照样没有变快,到这里已经无需过多注释。

  • 附录1

本人测试机设置:19年 15寸 macbook pro 内存16g 8焦点 系统osx:10.14.6

  •  附录2

 本次测试数据 

  •  附录3

网友反馈   https://www.jiqizhixin.com/articles/2019-04-13-2

 

,

Allbet

www.kaiwenpower.com欢迎进入欧博平台(Allbet Gaming),欧博平台开放欧博(Allbet)开户、欧博(Allbet)代理开户、欧博(Allbet)电脑客户端、欧博(Allbet)APP下载等业务。

版权声明

本文仅代表作者观点,
不代表本站欧博网址的立场。
本文系作者授权发表,未经许可,不得转载。