需求:根據表格左側的分類,將唐人街探案進行分類
# 分類算法 KNN
# 1.計算每個樣本和我新樣本的相似度是多高?
# 2.排序
# 3.選取K值
import pandas as pd
import numpy as np
movies = pd.read_excel("./電影分類數據.xlsx")
print(movies.columns)
list1 = np.sqrt((movies["搞笑鏡頭"] - movies.columns[7])**2 + (movies["擁抱鏡頭"] - movies.columns[8])**2 + (movies["打鬥鏡頭"] - movies.columns[9])**2)
print(list1)
# 增加一列
movies["相似度"] = list1
print(movies.columns)
print(movies.loc[:, ["電影類型", "相似度"]].sort_values(by="相似度", ascending=True).head())
print("這部電影的類型是: ", movies.loc[:, ["電影類型", "相似度"]].sort_values(by="相似度", ascending=True).head()["電影類型"].astype("category").describe()['top'])