尝试计算任务数据帧时出错



我一直试图将compute()函数传递给我拥有的数据帧,但它一直给我以下错误:

ValueError: Usecols不匹配列,列是预期的,但不是发现:[‘COL1’,‘COL2’,‘COL3’,‘COL4’,‘COL5’,‘COL6’,‘COL7]

import dask.dataframe as dd

use_cols = ['COL1', 'COL2', 'COL3', 'COL4', 'COL5', 'COL6', 'COL7']
ddframe = dd.read_csv('26367*', skiprows=[0, 1, 2, 3, 4, 5, 6], sep = '|', usecols = use_cols)
ddframe.compute()

如何解决这个问题?提前感谢

可能其中一个globbed文件不包含指定的列。检查这一点的简单方法是打印:

print(dd.read_csv('26367*', skiprows=[0, 1, 2, 3, 4, 5, 6], sep = '|').columns

如果上面的操作产生错误,那么您可能需要查看全局文件:

import glob
for f inb glob.glob('26367*'):
print(dd.read_csv(f, skiprows=[0, 1, 2, 3, 4, 5, 6], sep = '|').columns

这将显示列在文件中的定义是否一致。

最新更新