如何从存储在HDFS中的CSV文件创建dask数据帧(许多部分文件)

时间:2017-09-28 22:53:34

标签: hdfs dask dask-distributed

我正在尝试从HDFS文件(csv)创建dask数据帧。存储在HDFS中的csv文件包含许多部分文件。

在read_csv api上打电话:

dd.read_csv("hdfs:<some path>/data.csv")

发生以下错误:

OSError: Could not open file: <some path>/data.csv, mode: rb Path is not a file: <some path>/data.csv

实际上/data.csv是包含许多部分文件的目录。我不确定是否有一些不同的API来读取这样的hdfs csv。

1 个答案:

答案 0 :(得分:2)

当您仅传递目录名时,Dask不知道您要读取哪些文件。您应该传递一个glob字符串用于搜索文件或明确的文件列表,例如

<div class="half-faded">
  <div>Not solid</div>
  <a class="solid">Solid</a>
  <span class="solid">
    <span>Inside solid but not solid</span>
    <a href="#" class="biz">Solid business</a>  
  </span>
</div>

注意冒号后面的前导df = dd.read_csv("hdfs:///some/path/data.csv/*.csv") :所有hdfs路径都是这样开始的。