Python----數據預處理代碼實例


為方便收藏學習,轉載自:https://www.jb51.net/article/158168.htm

本文實例為大家分享了Python數據預處理的具體代碼,供大家參考,具體內容如下

1.導入標准庫

 
1
2
3
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

2.導入數據集

 
1
2
3
4
5
dataset = pd.read_csv( 'data (1).csv' ) # read_csv:讀取csv文件
#創建一個包含所有自變量的矩陣,及因變量的向量
#iloc表示選取數據集的某行某列;逗號之前的表示行,之后的表示列;冒號表示選取全部,沒有冒號,則表示選取第幾列;values表示選取數據集里的數據。
X = dataset.iloc[:, : - 1 ].values # 選取數據,不選取最后一列。
y = dataset.iloc[:, 3 ].values # 選取數據,選取每行的第3列數據dataset.
z = dataset.iloc[:, 0:8]  # 選取數據,選取每行的前7列。注意這里不包括第8列。
w = dataset.iloc[:, 8]     #選取數據,選取我每行的第8列。和上一行進行相比,這是在取過前7行之后,只取第八列。
上述的意思可以這樣考慮,選取數據進行訓練,前7列是特征,第8列是標簽。

3.缺失數據

 
1
2
3
4
5
from sklearn.preprocessing import Imputer #進行數據挖掘及數據分析的標准庫,Imputer缺失數據的處理
#Imputer中的參數:missing_values 缺失數據,定義怎樣辨認確實數據,默認值:nan ;strategy 策略,補缺值方式 : mean-平均值 , median-中值 , most_frequent-出現次數最多的數 ; axis =0取列 =1取行
imputer = Imputer(missing_values = 'NaN' , strategy = 'mean' , axis = 0 )
imputer = imputer.fit(X[:, 1 : 3 ]) #擬合fit
X[:, 1 : 3 ] = imputer.transform(X[:, 1 : 3 ])

4.分類數據

 
1
2
3
4
5
6
7
8
from sklearn.preprocessing import LabelEncoder,OneHotEncoder
labelencoder_X = LabelEncoder()
X[:, 0 ] = labelencoder_X.fit_transform(X[:, 0 ])
onehotencoder = OneHotEncoder(categorical_features = [ 0 ])
X = onehotencoder.fit_transform(X).toarray()
#因為Purchased是因變量,Python里面的函數可以將其識別為分類數據,所以只需要LabelEncoder轉換為分類數字
labelencoder_y = LabelEncoder()
y = labelencoder_y.fit_transform(y)

5.將數據集分為訓練集和測試集

 
1
2
3
4
5
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test = train_test_split(X,y,test_size = 0.2 ,random_state = 0 )
#X_train(訓練集的字變量),X_test(測試集的字變量),y_train(訓練集的因變量),y_test(訓練集的因變量)
#訓練集所占的比重0.2~0.25,某些情況也可分配1/3的數據給訓練集;train_size訓練集所占的比重
#random_state決定隨機數生成的方式,隨機的將數據分配給訓練集和測試集;random_state相同時會得到相同的訓練集和測試集

6.特征縮放

 
1
2
3
4
5
#特征縮放(兩種方式:一:Standardisation(標准化);二:Normalisation(正常化))
from sklearn.preprocessing import StandardScaler
sc_X = StandardScaler()
X_train = sc_X.fit_transform(X_train) #擬合,對X_train進行縮放
X_test = sc_X.transform(X_test) #sc_X已經被擬合好了,所以對X_test進行縮放時,直接轉換X_test

7.數據預處理模板

(1)導入標准庫
(2)導入數據集
(3)缺失和分類很少遇到
(4)將數據集分割為訓練集和測試集
(5)特征縮放,大部分情況下不需要,但是某些情況需要特征縮放

以上所述是給大家介紹的Python數據預處理詳解整合。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM