CSV文件读取性能大决战:Julia 、Python与R语言 - Deepak


任何数据分析工作流程中的首要任务就是简单地读取数据,而这绝对必须快速而有效地完成,这样才能开始更有趣的工作。在许多行业和领域中,CSV文件格式都是存储和共享表格数据的主要工具。快速而强大地加载CSV是至关重要的,并且必须在各种文件大小,数据类型和形状之间很好地扩展。这篇文章比较了在三个不同的CSV解析器中读取8个不同的真实数据集的性能:R的fread,Pandas的read_csv和Julia的CSV.jl,每个库都被选为“同类最佳” CSV解析器。
多线程对于实现当今计算机的最佳性能至关重要,但是只有一种语言(Julia)能够始终如一地有效使用多个内核。

基准测试表明,即使在限制单个内核的情况下,Julia的CSV.jl也比Pandas快1.5至5倍;启用多线程后,速度可以提高20倍以上。R的fread支持多线程,因此更具竞争力,但在许多数据集中,它仍然比Julia落后10倍或更多。用于基准测试的工具是用于Julia的BenchmarkTools.jl,用于R的microbenchmark和用于Python的timeit

详细分析点击标题进入原文