导出到文本文件仅在保存的文件中提供一个值
Exporting to text file provides only one value in saved file
我写了一个函数来获取余弦相似度,但是当我必须将结果输出到文本文件时遇到了问题。 for 中的索引变量看起来 returns 我需要的所有整数值,但在我的文本文件中,它只存储一个索引。有人可以帮忙吗?
from scipy.spatial.distance import cosine
def key_consine_similarity(tupple):
return tupple[1]
def get_computed_similarities(vectors, predicted_vectors, reverse=False):
data_size = len(df3)
cosine_similarities = []
for i in range(data_size):
cosine_sim_val = (1 - cosine(vectors[i], predicted_vectors[i]))
cosine_similarities.append((i, cosine_sim_val))
return sorted(cosine_similarities, key=key_consine_similarity, reverse=reverse)
def display_all_n(sorted_cosine_similarities, n=7735):
for i in range(n):
file = open('file.txt', 'w')
index, consine_sim_val = sorted_cosine_similarities[i]
file.write(str(index))
print (index)
file.close()
print('Printing all score')
sorted_cosine_similarities = get_computed_similarities(vectors=doc2vec_vectors, predicted_vectors=predicted_vectors)
display_all_n(sorted_cosine_similarities=sorted_cosine_similarities)
输出
Printing all score
3234
2342
3344
5656
file.txt
3234
当您以写入模式打开文件并写入时,所有以前的内容都会被删除。
您遇到的情况是,每次您要写入时都在打开和关闭文件,因此每次写入都会删除前一个文件。
要么只打开文件一次:
def display_all_n(sorted_cosine_similarities, n=7735):
file = open('file.txt', 'w')
for i in range(n):
index, consine_sim_val = sorted_cosine_similarities[i]
file.write(str(index) + '\n')
print (index)
file.close()
或以附加模式打开文件:
def display_all_n(sorted_cosine_similarities, n=7735):
for i in range(n):
file = open('file.txt', 'a')
index, consine_sim_val = sorted_cosine_similarities[i]
file.write(str(index) + '\n')
print (index)
file.close()
我写了一个函数来获取余弦相似度,但是当我必须将结果输出到文本文件时遇到了问题。 for 中的索引变量看起来 returns 我需要的所有整数值,但在我的文本文件中,它只存储一个索引。有人可以帮忙吗?
from scipy.spatial.distance import cosine
def key_consine_similarity(tupple):
return tupple[1]
def get_computed_similarities(vectors, predicted_vectors, reverse=False):
data_size = len(df3)
cosine_similarities = []
for i in range(data_size):
cosine_sim_val = (1 - cosine(vectors[i], predicted_vectors[i]))
cosine_similarities.append((i, cosine_sim_val))
return sorted(cosine_similarities, key=key_consine_similarity, reverse=reverse)
def display_all_n(sorted_cosine_similarities, n=7735):
for i in range(n):
file = open('file.txt', 'w')
index, consine_sim_val = sorted_cosine_similarities[i]
file.write(str(index))
print (index)
file.close()
print('Printing all score')
sorted_cosine_similarities = get_computed_similarities(vectors=doc2vec_vectors, predicted_vectors=predicted_vectors)
display_all_n(sorted_cosine_similarities=sorted_cosine_similarities)
输出
Printing all score
3234
2342
3344
5656
file.txt
3234
当您以写入模式打开文件并写入时,所有以前的内容都会被删除。
您遇到的情况是,每次您要写入时都在打开和关闭文件,因此每次写入都会删除前一个文件。
要么只打开文件一次:
def display_all_n(sorted_cosine_similarities, n=7735):
file = open('file.txt', 'w')
for i in range(n):
index, consine_sim_val = sorted_cosine_similarities[i]
file.write(str(index) + '\n')
print (index)
file.close()
或以附加模式打开文件:
def display_all_n(sorted_cosine_similarities, n=7735):
for i in range(n):
file = open('file.txt', 'a')
index, consine_sim_val = sorted_cosine_similarities[i]
file.write(str(index) + '\n')
print (index)
file.close()