sklearn分類演算法例項(SVC KNN

2021-10-24 02:22:31 字數 2010 閱讀 3047

2.2 劃分資料集

2.3 選取模型進行定價分類

總結資料集展示:

可見,car資料集有6個屬性:buying、maint、doors、persons、lug_boot、safety

其取值範圍如下:

其類別class的取值範圍如下:

因為資料中很多為非數值型取值,因此需要將其數位化。

資料中全為非空取值,因此不需要對空值進行處理。

**如下:

from sklearn import preprocessing

import pandas as pd

data=pd.read_csv(

'car.csv'

) le=preprocessing.labelencoder(

)for i in

range

(len

(data.columns)):

data.iloc[

:,i]

=le.fit_transform(data.iloc[

:,i]

)#使用labelencoder對data的每個屬性的取值進行編碼

處理後效果如下圖所示:

#取data的屬性值

y=data.iloc[:,

-1]#取data的class分類

本資料集的大小為50k,根據上圖可以判斷分類可採取的模型為:svc和knn

①svc模型分類

from sklearn import svm

import numpy as np

#訓練模型

svc_model=svm.svc(

)svc_model.fit(x_train,y_train)

# 使用模型進行**

y_pred=svc_model.predict(x_test)

# 計算模型的精確度

y_test=np.array(y_test)

svc_acc=np.mean(

(y_test==y_pred)

)#得到的值svc_acc:0.882466281310212

②knn模型分類
from sklearn.neighbors import kneighborsclassifier

#訓練模型

knn_model=kneighborsclassifier(

)knn_model.fit(x_train,y_train)

# 使用模型進行**

y_pred_knn=knn_model.predict(x_test)

# 計算模型的精確度

knn_acc=np.mean(y_pred_knn==y_test)

#得到的值knn_acc:0.9017341040462428

SVM演算法原理以及sklearn例項

今天重新學習了一遍svm的內容,發現好多以前看不懂的推導公式都能理解了,趕緊記錄下來。作者屬於菜鳥級別,文中如有錯誤認識還請大家不吝賜教!svm support vector machine,支援向量機 是一種可應用與線性或非線性的一種分類器。以下我們按照svm的發展順序以及問題求解依次介紹。1.線...

sklearn 分類轉換為分類數值

標籤專用,能夠將分類轉換為分類數值 特徵專用,能夠將分類特徵轉換為分類數值 將原本的 原本為male與female,現在將這兩個資料轉換為0和1 原本的embarked,不同的艙位,有scq三種,現在可以轉換為0 1 2 servived有yes no unknown,轉換為0 1 2 import...

sklearn中的分類方法

multinomial bayes classifier from sklearn.bayes import multinomialnb clf multinomialnb alpha 0.01 clf.fit train x,train y knn classifier from sklearn....