【发布时间】:2019-03-10 09:12:41
【问题描述】:
我已经下载了一个 Kaggle Kernel 作为 Jupyter Notebook 文件,我试图在我的本地系统上运行它。内核在 Kaggle 上运行良好。但是,当我尝试将以下行(在单元格 4 中)作为 .ipynb 文件运行时,它会引发错误:
cols_to_drop = [col for col in train_df.columns if train_df[col].nunique(dropna=False) == 1]
返回的错误是:
TypeError: unhashable type: 'dict'
基于此 Stack Overflow question,我了解字典不能用作另一个字典中的键。但是,我无法确定哪一段代码实际上代表了字典。
我已经尝试了几个替代版本的代码,基于此article 列表理解中的格式。
new_list = [expression(i) for i in old_list if filter(i)]
但是,它们会产生相同的错误。
【问题讨论】:
标签: python pandas numpy dictionary list-comprehension