python - 使用 scikit-learn 加载 .arff 文件时出错

标签 python arff

我想将属性关系文件格式(.arff)与 scikit-learn 一起使用来解决分类问题。该代码在 Windows 10 计算机上运行良好,但是当我在另一台装有 Ubuntu(18.04.1) 的计算机上尝试相同的代码时,它会抛出一个令人困惑的错误。以下是加载 arff 文件的代码:

import arff, numpy as np
dataset = arff.load(open('mydataset.arff'))
mydata = np.array(dataset['data'])

我收到的错误是这样的:

Traceback (most recent call last):
  File "/home/user/Desktop/ml_classification.py", line 14, in <module>
    mydata = np.array(dataset['data'])
TypeError: 'generator' object is not subscriptable

此错误的原因可能是什么?为什么它只发生在一台计算机上而不发生在另一台计算机上?

最佳答案

我假设您正在使用旧的或不受支持的 ARFF 库。要了解您正在使用的 ARFF 包的详细信息,请尝试 pip show arff。在我的第一次尝试中,它显示了谷歌代码网站的网址(现已不复存在)。尝试删除当前的 arff 软件包并在 https://pypi.org/project/liac-arff/ 安装该软件包。使用pip install liac-arff。您的代码应该与 liac-arff 包一起使用。

关于python - 使用 scikit-learn 加载 .arff 文件时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53617253/

相关文章:

java - FastVector<E> 类型已弃用

python - 从 python 输出创建 ARFF 文件

python - 导入错误 : No module named arff

save - 将weka结果输出到文本文件

python - pyqt5_tools designer.exe 不存在

python - 与 CherryPy 记录器分开记录

python - DRF-通过模型在 M2M 中创建新实例时出错

python - 如何使用python在yaml文件中自动创建子文件夹或直接文件?

python - 当批量大小=1时批量归一化

python - 在这种情况下,语法 [] 意味着什么?