我正在按照教程here对文档进行分类。我遇到了这段代码的问题:
from itertools import cycle
colors = ['b', 'g', 'r', 'c', 'm', 'y', 'k']
for i, c in zip(np.unique(y_train), cycle(colors)):
plt.scatter(X_train_small_pca[y_train == i, 0],
X_train_small_pca[y_train == i, 1],
c=c, label=twenty_train_small.target_names[i], alpha=0.5)
_ = plt.legend(loc='best')
我期待一个类似于教程中的示例的散点图,其中包含很多日期点。相反,我收到一个数据点。
我的X_train_small_pca
看起来像这样:
array([[ 0.3310974 , -0.07091423],
[ 0.39871607, -0.26434965],
[ 0.47174667, -0.22348895],
...,
[ 0.49631973, 0.12411882],
[ 0.36678049, 0.24062078],
[ 0.22540712, -0.1105503 ]])
zip
行产生这个,迭代通过:
[(u'alt.atheism', 'b'),
(u'talk.religion.misc', 'g'),
(u'comp.graphics', 'r'),
(u'sci.space', 'c')]
最后,我在print
循环开始后立即放置for
行,我得到了这个输出:
(u'alt.atheism', 0.33109737451727428, -0.070908715239074438)
(u'talk.religion.misc', 0.33109737451727428, -0.070908715239074438)
(u'comp.graphics', 0.33109737451727428, -0.070908715239074438)
(u'sci.space', 0.33109737451727428, -0.070908715239074438)
为什么我的散点图只能看到所有类别的单点,为什么它只看到总共4行,而不是我X_train_small_pca
的全部,这是预期的大小?