У меня есть большой набор данных, в котором я должен вычислить сходство (элементов), то есть из двух данных, например, проданный элемент в одном кадре и непроданный элемент в другом кадре
def jaccard_similarity(list1, list2):
s1 =set(list1)
s2 =set(list2)
val = (len(s1.intersection(s2)) / len(s1.union(s2)))
return (val)
pip2 = []
for i in range(0, new_properties.shape[0]):
pip1 = []
for j in range(0, unsold_property.shape[0]):
list1.append(jaccard_similarity(new[i], unsold[j]))
pip2.append(pip1)
jaccard_sim = pd.DataFrame(pip2)
кадр данных iЯ получаю, это не дает хорошие результаты, как ожидалось для моей системы рекомендаций. Я хочу добавить вес к переменной и вычислить «весовое сходство с jaccard». Кто-нибудь может подсказать мне, как я могу это сделать, и код для этого на python.
каждый кадр данных имеет 10 столбцов.
row 1 from sold dataframe
[Office , Midwest , GT 10 ,11-to-29 , 2-to-5 ,More-than-25000 , Others,existing ,Other , Low]
row 1 from unsold dataframe Multi-Housing
[Multi-Housing ,Northeast,GT 100, Till-10,2-to-5 ,More-than-25000 ,Existing , Others , Other ,Very Low]