Python----數(shù)據(jù)預(yù)處理代碼實(shí)例
本文實(shí)例為大家分享了Python數(shù)據(jù)預(yù)處理的具體代碼,供大家參考,具體內(nèi)容如下
1.導(dǎo)入標(biāo)準(zhǔn)庫
import numpy as np import matplotlib.pyplot as plt import pandas as pd
2.導(dǎo)入數(shù)據(jù)集
dataset = pd.read_csv('data (1).csv') # read_csv:讀取csv文件 #創(chuàng)建一個包含所有自變量的矩陣,及因變量的向量 #iloc表示選取數(shù)據(jù)集的某行某列;逗號之前的表示行,之后的表示列;冒號表示選取全部,沒有冒號,則表示選取第幾列;values表示選取數(shù)據(jù)集里的數(shù)據(jù)。 X = dataset.iloc[:, :-1].values # 選取數(shù)據(jù),不選取最后一列。 y = dataset.iloc[:, 3].values # 選取數(shù)據(jù),選取每行的第3列數(shù)據(jù)
3.缺失數(shù)據(jù)
from sklearn.preprocessing import Imputer #進(jìn)行數(shù)據(jù)挖掘及數(shù)據(jù)分析的標(biāo)準(zhǔn)庫,Imputer缺失數(shù)據(jù)的處理 #Imputer中的參數(shù):missing_values 缺失數(shù)據(jù),定義怎樣辨認(rèn)確實(shí)數(shù)據(jù),默認(rèn)值:nan ;strategy 策略,補(bǔ)缺值方式 : mean-平均值 , median-中值 , most_frequent-出現(xiàn)次數(shù)最多的數(shù) ; 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.分類數(shù)據(jù)
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() #因?yàn)镻urchased是因變量,Python里面的函數(shù)可以將其識別為分類數(shù)據(jù),所以只需要LabelEncoder轉(zhuǎn)換為分類數(shù)字 labelencoder_y=LabelEncoder() y=labelencoder_y.fit_transform(y)
5.將數(shù)據(jù)集分為訓(xùn)練集和測試集
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ùn)練集的字變量),X_test(測試集的字變量),y_train(訓(xùn)練集的因變量),y_test(訓(xùn)練集的因變量) #訓(xùn)練集所占的比重0.2~0.25,某些情況也可分配1/3的數(shù)據(jù)給訓(xùn)練集;train_size訓(xùn)練集所占的比重 #random_state決定隨機(jī)數(shù)生成的方式,隨機(jī)的將數(shù)據(jù)分配給訓(xùn)練集和測試集;random_state相同時會得到相同的訓(xùn)練集和測試集
6.特征縮放
#特征縮放(兩種方式:一:Standardisation(標(biāo)準(zhǔn)化);二:Normalisation(正?;? from sklearn.preprocessing import StandardScaler sc_X=StandardScaler() X_train=sc_X.fit_transform(X_train)#擬合,對X_train進(jìn)行縮放 X_test=sc_X.transform(X_test)#sc_X已經(jīng)被擬合好了,所以對X_test進(jìn)行縮放時,直接轉(zhuǎn)換X_test
7.數(shù)據(jù)預(yù)處理模板
(1)導(dǎo)入標(biāo)準(zhǔn)庫
(2)導(dǎo)入數(shù)據(jù)集
(3)缺失和分類很少遇到
(4)將數(shù)據(jù)集分割為訓(xùn)練集和測試集
(5)特征縮放,大部分情況下不需要,但是某些情況需要特征縮放
以上所述是小編給大家介紹的Python數(shù)據(jù)預(yù)處理詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- Python多進(jìn)程模式實(shí)現(xiàn)多核CPU并行計(jì)算
- python multiprocessing 多進(jìn)程并行計(jì)算的操作
- Python基于pyCUDA實(shí)現(xiàn)GPU加速并行計(jì)算功能入門教程
- Python 多核并行計(jì)算的示例代碼
- python數(shù)據(jù)預(yù)處理之?dāng)?shù)據(jù)標(biāo)準(zhǔn)化的幾種處理方式
- python實(shí)現(xiàn)數(shù)據(jù)預(yù)處理之填充缺失值的示例
- Python數(shù)據(jù)預(yù)處理之?dāng)?shù)據(jù)規(guī)范化(歸一化)示例
- python數(shù)據(jù)預(yù)處理之將類別數(shù)據(jù)轉(zhuǎn)換為數(shù)值的方法
- python數(shù)據(jù)預(yù)處理 :樣本分布不均的解決(過采樣和欠采樣)
- python 刪除excel表格重復(fù)行,數(shù)據(jù)預(yù)處理操作
- Python Joblib庫使用方法案例總結(jié)
相關(guān)文章
python把數(shù)據(jù)框?qū)懭隡ySQL的方法
這篇文章主要介紹了如何讓python把數(shù)據(jù)框?qū)懭隡ySQL,下文利用上海市2016年9月1日公共交通卡刷卡數(shù)據(jù)的一份數(shù)據(jù)單展開其方法,需要的小伙伴可以參考一下2022-03-03Django中的WebSocket實(shí)時通信的實(shí)現(xiàn)小結(jié)
在Django中,使用WebSocket可以實(shí)現(xiàn)實(shí)時通信,例如聊天應(yīng)用、實(shí)時更新等,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-05-05在Python中操作字典之setdefault()方法的使用
這篇文章主要介紹了在Python中操作字典之setdefault()方法的使用,是Python入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下2015-05-05