Dask error: Length of values does not match length of index

Dask error: Length of values does not match length of index

我已经使用 dask 以这种方式读取 csv 文件:

import dask.dataframe  as dd
train = dd.read_csv('act_train.csv')

然后我想对每行应用简单的逻辑,这在 pandas:

中工作得很好
columns = list(train.columns)

for col in columns[1:]:
    train[col] = train[col].apply(lambda x: x if x == -1 else x.split(' ')[1])

不幸的是,最后一行代码产生了以下错误:值的长度与索引的长度不匹配

我做错了什么?

如果 x 不包含 space 字符,那么 x.split(' ') 将 return 包含单个元素 x 的列表。

因此,当您尝试通过调用访问 x.split(' ') 的第二个元素时 x.split(' ')[1]。它会给出错误:

"Length of values does not match length of index",因为 x.split(' ').

中索引 1 处没有元素