3

我对所有这些工具都很陌生。我一直在使用 libsvm 并想使用 scikit。但我所有的输入都是 libsvm 格式。像这样的东西

 +1 1:1 36:1
 +1 1:1 11:1 25:1 36:1

我使用load_svmlight_files函数加载,加载我加载的训练数据后看起来像这样 (1, 0) 1.0 (1, 35) 1.0 (2, 0) 1.0 (2, 10) 1.0 (2, 24) 1.0 (2, 35) 1.0

但是当我尝试使用 pylab scatter 它返回

   ValueError: setting an array element with a sequence.

如何将我的数据更改为 scikit 二维数组?

4

1 回答 1

7

sklearn.datasets.load_svmlight_file, 会将数据加载为scipy.sparseCSR 矩阵,而 matplotlib 散点图需要一个 NumPy 数组。如果您认为将稀疏数据具体化为密集的 NumPy 数组将适合内存,您可以.toarray()在其上调用该方法。

此外,散点图仅对二维数组数据有意义。

于 2012-11-27T22:35:00.670 回答