Я написал код ниже, который вычисляет оценку TF-IDF
docs=['ali is a good boy',
'a good boy is not bad',
'ali is not bad but bad is good']
cv=CountVectorizer()
# this steps generates word counts for the words in your docs
word_count_vector=cv.fit_transform(docs)
print(word_count_vector)
tfidf_transformer=TfidfTransformer(smooth_idf=True,use_idf=True)
tfidf_transformer.fit(word_count_vector)
# print idf values
df_idf = pd.DataFrame(tfidf_transformer.idf_, index=cv.get_feature_names(),columns=["idf_weights"])
# sort ascending
df_idf.sort_values(by=['idf_weights'])
# count matrix
count_vector=cv.transform(docs)
# tf-idf scores
tf_idf_vector=tfidf_transformer.transform(count_vector)
feature_names = cv.get_feature_names()
print(feature_names)
#get tfidf vector for first document
first_document_vector=tf_idf_vector[0]
#for first_document_vector in tf_idf_vector:
#print the scores
df=(pd.DataFrame(first_document_vector.T.todense().transpose(),columns=feature_names))
df.to_csv('file1.csv')
1- В конце концов, я могу получить вектор первого документа. Но я не могу получить вектор для всех документов. Я пробовал перебирать и добавлять данные к кадру, но это не сработало. 2. Как сохранить индекс документа в CSV-файле?
Я должен запустить его на графике фильмов из mov ie Набор данных объектива. Вот почему для меня важно сохранить индекс документов mnet.