我有一个很大的dbf文件,将其转换为熊猫数据帧需要花费大量时间。 有没有办法将文件转换为dask数据框?
答案 0 :(得分:0)
Dask没有dbf加载方法。
据我所知,dbf文件不支持对数据的随机访问,因此不可能在单独的工作线程中并行读取文件的各个部分。我对此可能是错的,但是dbfreader肯定没有提到跳转到任意记录。
因此,您可以并行地从dbf中读取并且希望看到速度提高的唯一方法是将原始数据拆分为多个dbf文件,并使用dask.delayed
来读取每个文件。 / p>
值得一提的是,dbfreader速度较慢的原因(但请您自己进行分析!)是在将记录传递给熊猫之前,它正在逐字节操作并为每条记录制作python对象。如果您真的想加快速度,则应将此代码转换为cython或numba,并分配一个预先分配的数据帧。