欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python數(shù)據(jù)預(yù)處理之將類別數(shù)據(jù)轉(zhuǎn)換為數(shù)值的方法

 更新時間:2017年07月05日 09:16:33   投稿:jingxian  
下面小編就為大家?guī)硪黄猵ython數(shù)據(jù)預(yù)處理之將類別數(shù)據(jù)轉(zhuǎn)換為數(shù)值的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

在進行python數(shù)據(jù)分析的時候,首先要進行數(shù)據(jù)預(yù)處理。

有時候不得不處理一些非數(shù)值類別的數(shù)據(jù),嗯, 今天要說的就是面對這些數(shù)據(jù)該如何處理。

目前了解到的大概有三種方法:

1,通過LabelEncoder來進行快速的轉(zhuǎn)換;

2,通過mapping方式,將類別映射為數(shù)值。不過這種方法適用范圍有限;

3,通過get_dummies方法來轉(zhuǎn)換。

import pandas as pd
from io import StringIO

csv_data = '''A,B,C,D
1,2,3,4
5,6,,8
0,11,12,'''

df = pd.read_csv(StringIO(csv_data))
print(df)
#統(tǒng)計為空的數(shù)目
print(df.isnull().sum())
print(df.values)

#丟棄空的
print(df.dropna())
print('after', df)
from sklearn.preprocessing import Imputer
# axis=0 列  axis = 1 行
imr = Imputer(missing_values='NaN', strategy='mean', axis=0)
imr.fit(df) # fit 構(gòu)建得到數(shù)據(jù)
imputed_data = imr.transform(df.values) #transform 將數(shù)據(jù)進行填充
print(imputed_data)

df = pd.DataFrame([['green', 'M', 10.1, 'class1'],
          ['red', 'L', 13.5, 'class2'],
          ['blue', 'XL', 15.3, 'class1']])
df.columns =['color', 'size', 'price', 'classlabel']
print(df)

size_mapping = {'XL':3, 'L':2, 'M':1}
df['size'] = df['size'].map(size_mapping)
print(df)

## 遍歷Series
for idx, label in enumerate(df['classlabel']):
  print(idx, label)

#1, 利用LabelEncoder類快速編碼,但此時對color并不適合,
#看起來,好像是有大小的
from sklearn.preprocessing import LabelEncoder
class_le = LabelEncoder()
color_le = LabelEncoder()
df['classlabel'] = class_le.fit_transform(df['classlabel'].values)
#df['color'] = color_le.fit_transform(df['color'].values)
print(df)

#2, 映射字典將類標(biāo)轉(zhuǎn)換為整數(shù)
import numpy as np
class_mapping = {label: idx for idx, label in enumerate(np.unique(df['classlabel']))}
df['classlabel'] = df['classlabel'].map(class_mapping)
print('2,', df)


#3,處理1不適用的
#利用創(chuàng)建一個新的虛擬特征
from sklearn.preprocessing import OneHotEncoder
pf = pd.get_dummies(df[['color']])
df = pd.concat([df, pf], axis=1)
df.drop(['color'], axis=1, inplace=True)
print(df)

以上這篇python數(shù)據(jù)預(yù)處理之將類別數(shù)據(jù)轉(zhuǎn)換為數(shù)值的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 利用PyInstaller將python程序.py轉(zhuǎn)為.exe的方法詳解

    利用PyInstaller將python程序.py轉(zhuǎn)為.exe的方法詳解

    這篇文章主要給大家介紹了利用PyInstaller將python程序.py轉(zhuǎn)為.exe的方法,文中介紹的非常詳細,對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。
    2017-05-05
  • python?中的?super詳解

    python?中的?super詳解

    這篇文章主要介紹了python?中的?super,提到 super,最直接的想法就是它代表了父類,替父類執(zhí)行某些方法,但是理解也僅止步于此,下面對 super 做進一步理解,需要的朋友可以參考下
    2022-08-08
  • numpy 對矩陣中Nan的處理:采用平均值的方法

    numpy 對矩陣中Nan的處理:采用平均值的方法

    今天小編就為大家分享一篇numpy 對矩陣中Nan的處理:采用平均值的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Python將list元素轉(zhuǎn)存為CSV文件的實現(xiàn)

    Python將list元素轉(zhuǎn)存為CSV文件的實現(xiàn)

    這篇文章主要介紹了Python將list元素轉(zhuǎn)存為CSV文件的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • python 類的繼承 實例方法.靜態(tài)方法.類方法的代碼解析

    python 類的繼承 實例方法.靜態(tài)方法.類方法的代碼解析

    這篇文章主要介紹了python 類的繼承 實例方法.靜態(tài)方法.類方法的代碼解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • python 利用matplotlib在3D空間繪制二次拋物面的案例

    python 利用matplotlib在3D空間繪制二次拋物面的案例

    這篇文章主要介紹了python 利用matplotlib在3D空間繪制二次拋物面的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • python?HZK16字庫使用詳解

    python?HZK16字庫使用詳解

    這篇文章主要介紹了python?HZK16字庫使用,本文結(jié)合實例代碼給大家講解的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-02-02
  • Python設(shè)置Word頁面紙張方向為橫向

    Python設(shè)置Word頁面紙張方向為橫向

    這篇文章主要為大家詳細介紹了Python設(shè)置Word頁面紙張方向為橫向的相關(guān)知識,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起
    2024-02-02
  • 解決Python3下map函數(shù)的顯示問題

    解決Python3下map函數(shù)的顯示問題

    今天小編就為大家分享一篇解決Python3下map函數(shù)的顯示問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python 迭代器介紹及作用詳情

    Python 迭代器介紹及作用詳情

    這篇文章主要介紹了Python 迭代器介紹及作用詳情,Python 中的迭代器是一個對象,用于迭代列表、元組、字典和集合等可迭代對象,文章圍繞主題展開詳細的內(nèi)容介紹,需要的朋友可以參考一下
    2022-07-07

最新評論