全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 数据分析与数据挖掘
815 0
2020-11-13
写入/读取大型R数据帧/数据表。
我最近从最新发布的美国社区调查(ACS)人口普查数据中下载了一个为期5年的公共用途微型样本(PUMS)。数据包含有关美国家庭和个人(人口)的大量人口统计信息。最终的住户和人口数据存储区对于台式机计算而言是相当大的:住户由近750万条记录组成,并具有233个属性,而人口则不到1 580万个案例和286个变量。  
除了进行大量的人口统计分析外,这些人口普查数据还非常适合性能测试功能来提取,修改和提供分析数据。也就是说,如果您的计算机具有足够的火力:R和Python-Pandas都通过内存大小来约束数据结构。幸运的是,我的Wintel笔记本电脑具有64 GB的RAM和2 TB的磁盘/固态存储,在这里可以完成硬件任务。
我在此博客上的重点是确定R的dataframe / data.table读写功能如何测量多达15 GB以上的原始输入。与重复和汇总的较小测试相比,使用这种大小的数据通常可以提供更清晰的基准。确实,通常,就像本笔记本中的情况一样,分析师可能会遇到各种方法之间不同数量级的性能差异。
在下面的分析中,我对比了使用三种不同的csv函数,R的带压缩和不带压缩功能的saveRDS函数,可互操作的羽毛库以及nonesuch fst库将18 GB总体数据帧写入OS文件所花费的时间。然后,我依次将这些刚生成的OS文件读回到数据帧/数据表中,并比较时序结果。七种读/写方法中的每一种都产生可在不同R平台之间移植的文件。另外,feather软件包可在R和Python-Pandas之间互操作-这是一个主要好处。
在性能测试结束时,我概述了一种通用方法,该方法可以使用fst和feather软件包的组合功能,从R有效地向R和Python-Pandas平台中采购数据。我在R中演示了该方法,并使用了漂亮的网状包在Python-Pandas中进行了演示。
题库
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群