python错误使用序列设置数组元素

Posted

技术标签:

【中文标题】python错误使用序列设置数组元素【英文标题】:python error setting an array element with a sequence 【发布时间】:2016-10-30 11:30:03 【问题描述】:

我试图在 scikit-learn 中为这个例子探索不同的分类器 网站http://scikit-learn.org/stable/tutorial/text_analytics/working_with_text_data.html。但是,下面的代码产生了错误:ValueError: setting an array element with a sequence。

from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfTransformer
import tensorflow.contrib.learn as skflow

data = ["I so handsome. I just broke the mirror!","I am a normal guy."]
label = np.array([0,1])

#CountVectoriser
count_vect = CountVectorizer()
X_train_counts = count_vect.fit_transform(data)

#TfidfTransformer
tfidf_transformer = TfidfTransformer()
X_train_tfidf = tfidf_transformer.fit_transform(X_train_counts)

#Classifier
clf = skflow.TensorFlowLinearClassifier(n_classes=2)
clf.fit(X_train_tfidf, label)

【问题讨论】:

【参考方案1】:

TensorFlowLinearClassifier不处理CSR矩阵作为输入,你可以关注that issue的进度。


您现在可以做的是将 X_train_tfidf 转换为 numpy 矩阵,然后再将其提供给 clf.fit()

clf.fit(X_train_tfidf.toarray(), label)

【讨论】:

以上是关于python错误使用序列设置数组元素的主要内容,如果未能解决你的问题,请参考以下文章

python错误设置数组元素与序列

ValueError:使用序列python,numpy设置数组元素[重复]

Python错误为不同循环设置具有序列的数组元素[重复]

Python:ValueError:使用序列设置数组元素

在训练 SVM 对图像进行分类时设置具有序列错误的数组元素

ValueError:使用序列设置数组元素