機器學習實戰之knn演算法pandas實現

2021-08-03 12:33:04 字數 974 閱讀 9067

開始學習機器學習實戰這本書,打算看完了再回頭看 周志華的 機器學習。機器學習實戰的**都是用numpy寫的,有些麻煩,所以考慮用pandas來實現**,也能回顧之前學的 用python進行資料分析。感覺目前章節的測試方法太渣,留著以後學了更多再回頭寫。

# coding: gbk

import pandas as pd

import numpy as np

defgetdata

(path):

data = pd.read_csv(path, header=none, sep='\t')

character = data.iloc[:, :-1]

label = data.iloc[:, -1]

chara_max = character.max()

chara_min = character.min()

chara_range = chara_max - chara_min

normal_chara = (character - chara_min) / chara_range

return normal_chara, label # 獲得歸一化特徵值和標記

defknn

(inx, normal_chara, label, k):

data_sub = normal_chara - inx

data_sum = data_square.sum(axis=1)

data_sqrt = data_sum.map(np.sqrt)

dis_sort = data_sqrt.argsort()

k_label = label[dis_sort[:k]]

label_sort = k_label.value_counts()

res_label = label_sort.index[0]

return res_label # knn演算法分類

機器學習實戰之knn演算法

程式 author xiaoyun from numpy import import operator def createdataset group array 1.0,0.9 1.0,1.0 0.1,0.2 0.0,0.1 labels a a b b return group,labels d...

機器學習實戰之KNN演算法

1 knn分類演算法介紹 演算法實現原理 存在乙個樣本資料集,將需要分類的輸入值與樣本資料集計算歐式距離,將歐式距離由小到大進行排序,取前k次最小距離對應的樣本資料集,對該樣本資料集的類別進行統計,其 現次數最多的類別為輸入值的預判類別。歐式距離計算公式 假設a點座標為 x1,y1 b點座標為 x2...

《機器學習實戰》之knn演算法

買了王斌老師翻譯的 機器學習實戰 一書,裡面全是乾貨,既可以練python,又可以學習機器學習演算法知識,挺不錯的,學習一些東西這裡分享下。k 近鄰演算法 knn 它的核心思想就一句話,如果兩個東西各方面屬性都很相似,那麼這兩個東西屬於同一類。k的意思是有很多東西和你要判斷的東西相似 稱作x 那麼找...