Dask可以将超过计算资源池可用内存的大型数据集“装载”进内存,然后像Pandas、Numpy等数据处理工具一样,对数据进行处理。它屏蔽了数据的分批装载和计算过程,让开发者更专注于数据本身的逻辑。使用上,仅需pip install dask,即可在本地使用,用法可参考上面的链接。以下简单示例在16G内存电脑上,处理存储在多个csv文件中的20G期货tick数据(实际上仅使用2G内存):

import dask.dataframe as dd
df = dd.read_csv("../future-quotation/2020.8.3~2020.9.18.期货全市场行情数据/DataTimeStream/*.csv", names = [    "localtime",                        "InstrumentID","TradingDay","ActionDay","UpdateTime","UpdateMillisec","LastPrice","Volume","HighestPrice","LowestPrice","OpenPrice","ClosePrice","AveragePrice","AskPrice1","AskVolume1","BidPrice1","BidVolume1","UpperLimitPrice","LowerLimitPrice","OpenInterest","Turnover","PreClosePrice","PreOpenInterest","PreSettlementPrice"],dtype = {'AveragePrice': 'float64',       'OpenInterest': 'float64', 'PreOpenInterest': 'float64','BidPrice1': 'float64','ClosePrice': 'float64','HighestPrice': 'float64','LastPrice': 'float64','LowestPrice': 'float64','OpenPrice': 'float64','PreClosePrice': 'float64','Turnover': 'float64'})
df = df.drop(columns = ["localtime",                        "ActionDay","UpdateTime","UpdateMillisec","LastPrice","Volume","HighestPrice","LowestPrice","OpenPrice","ClosePrice","AveragePrice","UpperLimitPrice","LowerLimitPrice","OpenInterest","Turnover","PreClosePrice","PreOpenInterest","PreSettlementPrice"])
df["AskInterest"]=df["AskPrice1"]*df["AskVolume1"]
df["BidInterest"]=df["BidPrice1"]*df["BidVolume1"]
df = df.groupby(["InstrumentID","TradingDay"]).sum()
df["AskIndex"] = df["AskInterest"] / df["AskVolume1"]
df["BidIndex"] = df["BidInterest"] / df["BidVolume1"]
df.compute()
df.head()

使用Dask装载和处理远远超过可用内存资源的市场或行情数据相关推荐

  1. 容器编排技术 -- Kubernetes 给容器和Pod分配内存资源

    容器编排技术 -- Kubernetes 给容器和Pod分配内存资源 1 Before you begin 2 创建一个命名空间 3 配置内存申请和限制 4 超出容器的内存限制 5 配置超出节点能力范 ...

  2. 程序员的自我修养--链接、装载与库笔记:内存

    1. 程序的内存布局 现代的应用程序都运行在一个内存空间里,在32位的系统里,这个内存空间拥有4GB(2的32次方)的寻址能力.应用程序可以直接使用32位的地址进行寻址,这被称为平坦(flat)的内存 ...

  3. iOS单个应用程序的最大可用内存是多少?

    iOS单个应用程序的最大可用内存是多少? StackOverflow上有人做了一些简单的测试,有限设备下迄今为止测到的结果: iPad1: 127MB/256MB/49% (大致crash临界值 / ...

  4. 4g内存只有1.6g可用_32位系统可用内存小 遇到32位系统内存小的解决方法

    内存是CPU进行沟通的桥梁,我们计算机上所有的程序都是在内存中运行的,如果内存不够用,可能系统缓慢卡顿,甚至会造成系统崩溃.那今天小编就给大家介绍一下32位系统可用内存小的解决方法,感兴趣的小伙伴一起 ...

  5. linux 物理内存统计,说说free命令  + Linux可用内存统计方法

    关键在于两个字段,buffers和cached. 你经常会发现Linux系统用了一段时间后,内存所剩无几,free命令,一看,内存全跑到 buffers和cached里面了:这个现象是正常的.访问过的 ...

  6. C# 利用WMI对象获取物理内存和可用内存大小

    下面的代码演示的是使用WMI对象可获取取物理内存和可用内存大小,在使用WMI对象前,先要添加对System.Management的引用,然后就可以调用WMI对象,代码如下: //获取总物理内存大小Ma ...

  7. linux docker 限制容器可用内存

    默认情况下容器使用的资源是不受限制的.也就是可以使用主机内核调度器所允许的最大资源.但是在容器的使用过程中,经常需要对容器可以使用的主机资源进行限制,本文介绍如何限制容器可以使用的主机内存. 为什么要 ...

  8. linux资源利用率检查_使用free命令查看实际内存占用(可用内存)

    linux下在终端环境下可以使用free命令看到系统实际使用内存的情况,一般用free -m方式查看内存占用情况(兆为单位).而系统实际可用内存是不是free部分呢,不是的,系统实际内存占用以及可用内 ...

  9. 已安装内存和可用内存不一致 4GB内存在win1064位系统中显示为可用 3.87GB解决办法

    问题如图:64位系统已经安装了4G内存,却在括号内显示3.87GB可用? 正常情况下如图:仅显示已安装的内存为8G,后面没有括号提示! 实际分析: 排除硬件保留内存寻址可能 Windows 将部分内存 ...

最新文章

  1. android 广告效果图,android 仿首页广告轮播效果
  2. 47. Permutations II 1
  3. Deep Ranking for Person Re-identification via Joint Representation Learning
  4. 为何终端防护对ICS如此重要
  5. 写了一个Windows服务,通过C#模拟网站用户登录并爬取BUG列表查询有没有新的BUG,并提醒我...
  6. VCG(VisualCodeGrepper)安装使用教程
  7. android 内存占用大 卡顿,安卓手机用久了就会卡顿?那是内存使用率高了,你需要这么做...
  8. Redis 04_位图bitmap
  9. SpringBoot用JdbcTemplates访问Mysql
  10. 《智能家居》培训第六天------2019-01-10
  11. NOIP模拟测试15「建造城市city(插板法)·轰炸·石头剪刀布」
  12. 学成在线--26.课程图片管理(图片删除)
  13. 启明星辰产品解读_IPS
  14. 系统平台商家如何快速提升店铺的搜索流量
  15. IAP 程序 跳转问题
  16. 查找最小的k 个元素
  17. 自我管理五维度,遇见更好的自己
  18. 基于STM32F103单片机的智能药盒喂食器智能插座系统
  19. linux配置4g网络命令_Linux常用操作练习汇总
  20. veloview读二维雷达数据_【SLAM】之Velodyne VLP16 激光雷达使用

热门文章

  1. 探索Redis事务回滚
  2. echart图表 和弦关系图 悲惨世界人物关系图的使用及配置项 修改旋转角度 顺时针旋转
  3. 微信小程序报错 Now you can provide attr `wx:key` for a `wx:for` to improve performance.
  4. OptionsMenu 遮挡住 Actionbar、Toolbar 与样式更改
  5. cn2线路有什么优点
  6. 访问者模式及其应用场景
  7. jmeter 添加html断言,JMeter-断言
  8. bagging论文阅读
  9. 网络编程 socket与黏包
  10. js中没有类怎么玩转面向对象