此代码用于对每个群集进行索引和排序,以识别哪些是最接近群集质心的前n个(我选择n = 6个)单词。 无论如何,我发现了这种错误: 'float'对象没有'encode'属性
谁能帮助我吗? 代码如下:from __future__ import print_function
print("Top terms per cluster:")
print()
#sort cluster centers by proximity to centroid
order_centroids = km.cluster_centers_.argsort()[:, ::-1]
for i in range(num_clusters):
print("Cluster %d words:" % i, end='')
for ind in order_centroids[i, :6]: #replace 6 with n words per cluster
print(' %s' % vocab_frame.ix[terms[ind].split(' ')].values.tolist()[0][0].encode('utf-8', 'ignore'), end=',')
print() #add whitespace
print() #add whitespace
print("Cluster %d titles:" % i, end='')
for title in frame.ix[i]['title'].values.tolist():
print(' %s,' % title, end='')
print() #add whitespace
print() #add whitespace
print()
print()
提前谢谢
答案 0 :(得分:0)
方法encode
只能应用于字符串,而不能应用于浮点数。
您可以将浮点数转换为字符串,但显然这没有多大意义。
您似乎只有一些您不理解的来自互联网的复制和粘贴代码。也许你应该首先专注于理解代码,然后运行它。一旦理解了代码,就应该明白错误的来源,以及如何正确修复它。