Dask数据帧上的值错误

Dask数据帧上的值错误,dask,Dask,我正在使用dask读取csv文件。但是,由于以下错误,我无法对其应用或计算任何操作: 您知道这个错误是怎么回事吗?如何修复它?在dask中读取csv文件时,如果无法识别正确的列数据类型,就会出现错误 例如,我们使用dask读取csv文件,如下所示: import dask.dataframe as dd df = dd.read_csv('\data\file.txt', sep='\t', header='infer') 这将提示上述错误 为了解决这个问题,@mrocklin在这个评论中建

我正在使用dask读取csv文件。但是,由于以下错误,我无法对其应用或计算任何操作:


您知道这个错误是怎么回事吗?如何修复它?

在dask中读取csv文件时,如果无法识别正确的列数据类型,就会出现错误

例如,我们使用dask读取csv文件,如下所示:

import dask.dataframe as dd

df = dd.read_csv('\data\file.txt', sep='\t', header='infer')
这将提示上述错误

为了解决这个问题,@mrocklin在这个评论中建议,我们需要确定列的数据类型。我们可以通过读取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)

在dask中读取csv文件时,如果无法识别列的正确数据类型,则会出现错误

例如,我们使用dask读取csv文件,如下所示:

import dask.dataframe as dd

df = dd.read_csv('\data\file.txt', sep='\t', header='infer')
这将提示上述错误

为了解决这个问题,@mrocklin在这个评论中建议,我们需要确定列的数据类型。我们可以通过读取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)

你能帮个忙吗?@rocklin先生,非常感谢你一直以来的帮助。通过你对这篇文章的回答,我找到了问题的解决办法:@MRocklin,错误来自推断数据类型,所以我所做的是让pandas首先读取csv文件,获得正确的数据类型,并将其用于dask read_csv。然而,当我们处理更大的数据集时,这可能并不总是有用的。如果你解决了问题,你可以考虑写下一个完整的解决方案,作为对其他人的帮助,并接受你自己的答案。另一方面,如果你认为这个问题对任何人都不起作用,你可以考虑删除它。我的答案如下所示。你能提供一个帮助吗?@rocklin先生,非常感谢你一直以来的帮助。通过你对这篇文章的回答,我找到了问题的解决办法:@MRocklin,错误来自推断数据类型,所以我所做的是让pandas首先读取csv文件,获得正确的数据类型,并将其用于dask read_csv。然而,当我们处理更大的数据集时,这可能并不总是有用的。如果你解决了问题,你可以考虑写下一个完整的解决方案,作为对其他人的帮助,并接受你自己的答案。另一方面,如果你认为这个问题对任何人都不起作用,你可以考虑删除它。我的答案如下所示。