【发布时间】:2014-05-11 15:43:22
【问题描述】:
我正在尝试使用 Python 而不是 R 进行数据分析,但遇到了一些麻烦。所以我一直在阅读 scikit-learn 的文档并尝试自己运行他们的 kmeans 示例,但收到以下错误消息:
使用稀疏矢量化器从训练数据集中提取特征 Traceback(最近一次调用最后一次):
文件“kmeans.py”,第 104 行,在 X = vectorizer.fit_transform(dataset.data)
文件“/Library/Python/2.7/site-packages/scikit_learn-0.15_git-py2.7-macosx-10.9-intel.egg/sklearn/feature_extraction/text.py”,第 1238 行,在 fit_transform return self._tfidf.transform(X, copy=False)
文件“/Library/Python/2.7/site-packages/scikit_learn-0.15_git-py2.7-macosx-10.9-intel.egg/sklearn/feature_extraction/text.py”,第 1010 行,在转换中 X = normalize(X, norm=self.norm, copy=False)
文件“/Library/Python/2.7/site-packages/scikit_learn-0.15_git-py2.7-macosx-10.9-intel.egg/sklearn/preprocessing/data.py”,第542行,标准化 inplace_csr_row_normalize_l2(X)
文件“sparsefuncs.pyx”,第 146 行,在 sklearn.utils.sparsefuncs.inplace_csr_row_normalize_l2 (sklearn/utils/sparsefuncs.c:2714)
ValueError: 缓冲区 dtype 不匹配,预期为 'int' 但得到了 'long'
供参考,代码在这里:http://scikit-learn.org/stable/auto_examples/document_clustering.html
我花了一些时间来获得整个 scipy 堆栈,但我确定我现在拥有它,只是想知道为什么复制粘贴他们的代码然后运行它会出错(我相信他们不会'不要在他们的网站上放置带有错误的代码)。关于修复是什么/发生了什么的任何想法?
【问题讨论】:
-
您运行的是 Windows 64 位吗?您的问题可能与此有关,这是一个错误:stackoverflow.com/questions/22775997/…
-
不,这是在 64 位 Mac 和 Python 2.7.2 上
-
您正在查看 0.14 的文档。尝试使用开发版本:scikit-learn.org/dev/auto_examples/document_clustering.html。代码其实不一样。
-
没错,但运行其他代码仍然会从复制的行产生相同的错误。代码对你有用吗@DanielVelkov?
-
我正在运行 0.14 并且代码没有问题。
标签: python numpy scipy scikit-learn