У меня есть датафрейм, как показано ниже:
import pandas as pd
# initialize list of lists
data = [["A123",0.12, 10], ["C123",0.30, 15], ["F123",0.40, 14]]
# Create the pandas DataFrame
df = pd.DataFrame(data, columns = ["ind", 'col1', 'col2'])
df.index=df['ind']
df = df.drop(columns=['ind'], axis=1)
df
col1 col2
ind
A123 0.12 10
C123 0.30 15
F123 0.40 14
Мне нужно найти косинусное сходство между строкой и желаемым выводом в следующем формате.
A123 C123 F123
A123 1 0.43 0.32
C123 0.43 1 0.90
F123 0.32 0.90 1
Мое решение:
from sklearn.metrics.pairwise import cosine_similarity
df_mat = pd.DataFrame()
df_mat = cosine_similarity(df)