Я пытаюсь сопоставить названия компаний двух разных фреймов данных df1 и df2. Я пытаюсь реализовать сходство tf-idf и косинус на двух столбцах - company1 в df1 и company2 в df2.Обработка несовместимых форм матриц в tf-idf
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
v = TfidfVectorizer()
tfidf_matrix1 = v.fit_transform(df1['company1'])
tfidf_matrix2 = v.fit_transform(df2['company2'])
cosine_similarity(tfidf_matrix2, tfidf_matrix1)
Это дает мне ошибку:
ValueError: Incompatible dimension for X and Y matrices: X.shape[1]
== 31089 while Y.shape[1] == 46844
Это, вероятно, потому, что:
tfidf_matrix1.shape
дает мне (78684, 46844) в качестве выхода. И -
tiff_matrix2.shape
дает мне (39462, 31089) как выход. Как исправить эту ошибку?
Действительно ли это ошибка? Вы ожидаете, что матрицы будут иметь одинаковую форму или нет? Если вы не ожидаете, что они будут иметь одинаковую форму, то как вы хотите «исправить» проблему? – ASGM
Я новичок в tf-idf. Я хочу найти сходство косинусов между каждым названием компании, чтобы я мог найти соответствующие компании. Моя основная цель - найти соответствующие компании. Я не знаю, как продолжить дальше из-за этой ошибки. – ComplexData