python機器學習

2021-10-05 15:44:13 字數 3025 閱讀 9227

在sklearn庫中的load_itis包含著鳶尾花分類的所有資料

呼叫load_iris函式載入資料

import mglearn

import numpy as np

from sklearn.datasets import load_iris

import pandas as pd

from pandas import dataframe

import matplotlib.pyplot as plt

iris_dataset=load_iris(

)#返回的iris是乙個bunch物件,與字典相似,包含鍵和值

#print("key of iris_dataset: \n{}".format(iris_dataset.keys()))

#print(iris_dataset['descr'][:193]+"\n...")

# #target_names鍵對應的值是乙個字串陣列,裡面包含了我們要**的花的種類

#print("targe names: \n{}".format(iris_dataset['target_names']))

# #feature_names鍵對應的值是乙個字串列表,對每乙個特徵進行了說明

#print("feature_names: \n{}".format(iris_dataset['feature_names']))

#資料報data裡面是花萼長度,寬度,花瓣長度,寬度的測量資料,格式為numpy

#print("type of data: {}".format(type(iris_dataset['data'])))

#data陣列的每行對應一朵花,列代表每朵花的資料,包含150朵

#print("shape of data:{}".format(iris_dataset['data'].shape))

#前五個樣本

#print("first five roes of data:\n{}".format(iris_dataset['data'][:5]))

#target包含測量過的花的種類,也是乙個numpy陣列

#print("type of target: {}".format(type(iris_dataset['target'])))

#target是一維陣列,每朵花對應其中乙個資料

#print("shape of target:{}".format(iris_dataset['target'].shape))

#品種被轉換為0到2 的整數,0表示setosa,1代表versicolor ,2表示virginica

#print("target :\n{}".format(iris_dataset['target']))

#對資料呼叫train_test_split,並對輸出結果採用下列方式命名

from sklearn.model_selection import train_test_split

x_train,x_test,y_train,y_test=train_test_split(iris_dataset[

'data'

], iris_dataset[

'target'

],random_state=0)

#random_state引數指定隨機數生成器的種子

# print("x_train shape:{}".format(x_train.shape))

# print("y_train shape:{}".format(y_train.shape))

# print("x_test shape:{}".format(x_test.shape))

# print("y_test shape:{}".format(y_test.shape))

#檢查資料將資料視覺化,將numpy陣列轉換成pandas datafram利用scatter_matrix繪製散點圖

#利用x_train中的資料建立datafarm,利用iri——dataset.feature_names中的字串對資料列進行標記,利用datafarm建立散點矩陣,按y_train著色

iris_datafarm=pd.dataframe(x_train,columns=iris_dataset.feature_names)

grr=pd.plotting.scatter_matrix(iris_datafarm,c=y_train,figsize=(15

,15),marker=

'o',hist_kwds=

,s=60

,alpha=

.8,cmap=mglearn.cm3)

#plt.show()

#k近鄰分類演算法是在neighbors模組的kneighborsclassifier類中實現,需將這個類例項化才能使用這個模型。

from sklearn.neighbors import kneighborsclassifier

knn=kneighborsclassifier(n_neighbors=1)

knn.fit(x_train,y_train)

x_new=np.array([[

5,2.9,1,

0.2]])

#呼叫knn的predict方法進行**,**函式 接收輸入的陣列型別測試樣本,一般是二維陣列,每一行是乙個樣本,每一列是乙個屬性。返回陣列型別的**結果。

prediction=knn.predict(x_new)

# print("predition:{}".format(prediction))

#print("perdition target name:{}".format(iris_dataset['target_names'][prediction]))

y_pred=knn.predict(x_test)

#print("test set preditions:\n{}".format(y_pred))

#精度計算

#print("test set score:".format(np.mean(y_pred==y_test)))

python機器 python機器學習

熱詞系列 打卡 mark一下,以後看 每天打卡學習 1 python 基礎 bv1lt4y1u7un 2 python 高階 bv1jz411b7dh 3 python 資料庫 bv1pg4y1a7a7 4 python gui與坦克大戰 bv1je411f72o 5 python numpy bv...

Python機器學習

python已經成為許多資料科學應用的通用語言,它既有通用程式語言的強大功能,也有特定領域指令碼語言 比如matlab或r 的易用性。python有用於資料載入 視覺化 統計 自然語言處理 影象處理等各種功能的庫。這個大型工具箱為資料科學提供了大量的通用功能和專用功能。使用python的主要優點之一...

python學習記錄 機器學習

首先安裝了anaconda3軟體,安裝的是最新版,安裝時勾選了寫入環境變數,支援的是python3.7.3版本。然後設定了清華大學的映象,主要是用管理員身份執行 anaconda prompt命令列,然後執行conda config命令,然後執行 然後,需要更新spyder3.3.3為3.3.4,仍...