我试图打印出每个集群的前10个单词,我正在努力将其保存到一个文件,不知道如何将内容保存到文件中,而不只是内置功能。这是我的代码。谁能给点建议吗?谢啦
代码:
l=['0','1','2','3','4']
for i in range(best_K):
print(l[i],"Cluster top words:", end='')
for ind in order_centroids[i, :10]:
word=vocab_frame.ix[terms[ind].split(' ')].values.tolist()[0][0]
print(' %s' % word, end=',')
print()
第1条:
In the text file i get <built-in function print>
l=['0','1','2','3','4']
order_centroids = model.cluster_centers_.argsort()[:, ::-1]
for i in range(best_K):
f = open("output.txt", "w")
print(l[i],"Cluster top words:", end='')
for ind in order_centroids[i, :10]:
word=vocab_frame.loc[terms[ind].split(' ')].values.tolist()[0][0]
print(' %s' % word, end=',')
my_top=str(print)
f.write(my_top)
fp = open("test.txt",'a')
for i in range(best_K):
print(l[i],"Cluster top words:", end='',, file=fp)
for ind in order_centroids[i, :10]:
word=vocab_frame.ix[terms[ind].split(' ')].values.tolist()[0][0]
print(' %s' % word, end=',', file=fp)
print(file=fp)
Pythonprint
函数实际上处理这个问题。您选择不使用上下文管理器来处理文件缓冲区的设置/拆除是否有原因?
l=['0','1','2','3','4']
order_centroids = model.cluster_centers_.argsort()[:, ::-1]
with open("output.txt", "w") as f:
for i in range(best_K):
print(l[i], "Cluster top words:", end='', file=f)
print(*[vocab_frame.loc[terms[ind].split(' ')].values.tolist()[0][0] for ind in order_centroids[i, :10]], sep=',', file=f)