答案 0 :(得分:1)
在读取dask中的csv文件时,如果无法识别正确的列类型,则会出现错误。
例如,我们使用dask读取csv文件,如下所示:
import dask.dataframe as dd
df = dd.read_csv('\data\file.txt', sep='\t', header='infer')
这会提示上述错误。
要解决此问题,正如@mrocklin对此评论https://github.com/dask/dask/issues/1166所建议的那样,我们需要确定列的dtype。我们可以通过读取pandas中的csv文件并识别数据类型并将其作为参数传递给使用dask读取csv来实现。
df_pd = pd.read_csv('\data\file.txt', sep='\t', header='infer')
dt = df_pd.dtypes.to_dict()
df = dd.read_csv('\data\file.txt', sep='\t', header='infer', dtype=dt)