【问题标题】:Dask error: Length of values does not match length of indexDask 错误:值的长度与索引的长度不匹配
【发布时间】:2016-08-08 12:34:49
【问题描述】:

我已经通过这种方式使用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])

不幸的是,最后一行代码产生了以下错误:Length of values does not match length of index

我做错了什么?

【问题讨论】:

标签: python csv dataframe runtime-error dask


【解决方案1】:

如果 x 不包含空格字符,则 x.split(' ') 将返回一个包含单个元素 x 的列表。

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

“值的长度与索引的长度不匹配”,因为 x.split(' ') 中的索引 1 处没有元素。

【讨论】:

  • @Rocketq 如果所有 x 都包含空格字符,它将正常工作
  • 是的,关键是,这个问题与不同的东西有关
猜你喜欢
  • 2020-06-02
  • 1970-01-01
  • 2021-06-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-19
  • 2018-12-19
  • 2020-05-29
相关资源
最近更新 更多