2021-07-14

動手學(xué)數(shù)據(jù)分析之?dāng)?shù)據(jù)清洗及特征處理

1.開始之前轩缤,導(dǎo)入numpy疮薇、pandas包和數(shù)據(jù)

(1)#加載所需的庫

import numpy as np
import pandas as pd

(2)加載數(shù)據(jù)train.csv

df = pd.read_csv('train.csv')
df.head(3)
image.png

2. 數(shù)據(jù)清洗簡述

(1)我們拿到的數(shù)據(jù)通常是不干凈的,所謂的不干凈薄风,就是數(shù)據(jù)中有缺失值抑月,有一些異常點(diǎn)等幼衰,需要經(jīng)過一定的處理才能繼續(xù)做后面的分析或建模,所以拿到數(shù)據(jù)的第一步是進(jìn)行數(shù)據(jù)清洗,本章我們將學(xué)習(xí)缺失值羞延、重復(fù)值渣淳、字符串和數(shù)據(jù)轉(zhuǎn)換等操作,將數(shù)據(jù)清洗成可以分析或建模的樣子伴箩。

(2)缺失值觀察與處理

*請查看每個特征缺失值個數(shù)


image.png

**對缺失值進(jìn)行處理

(1)處理缺失值一般有幾種思路

(2) 請嘗試對Age列的數(shù)據(jù)的缺失值進(jìn)行處理

(3) 請嘗試使用不同的方法直接對整張表的缺失值進(jìn)行處理


image.png

3.重復(fù)值觀察與處理

(1)請查看數(shù)據(jù)中的重復(fù)值

image.png

(2)對重復(fù)值進(jìn)行處理

image.png

(3)將前面清洗的數(shù)據(jù)保存為csv格式

df.to_csv('test_clear.csv')

4.特征觀察與處理

(1)對年齡進(jìn)行分箱(離散化)處理

(1) 分箱操作是什么入愧?

(2) 將連續(xù)變量Age平均分箱成5個年齡段,并分別用類別變量12345表示

(3) 將連續(xù)變量Age劃分為(0,5] (5,15] (15,30] (30,50] (50,80]五個年齡段赛蔫,并分別用類別變量12345表示

(4) 將連續(xù)變量Age按10% 30% 50% 70% 90%五個年齡段砂客,并用分類變量12345表示

(5) 將上面的獲得的數(shù)據(jù)分別進(jìn)行保存,保存為csv格式

#將連續(xù)變量Age平均分箱成5個年齡段呵恢,并分別用類別變量12345表示
df['AgeBand'] = pd.cut(df['Age'], 5,labels = [1,2,3,4,5])
df.head()
image.png
#將連續(xù)變量Age劃分為(0,5] (5,15] (15,30] (30,50] (50,80]五個年齡段鞠值,并分別用類別變量12345表示
df['AgeBand'] = pd.cut(df['Age'],[0,5,15,30,50,80],labels = [1,2,3,4,5])
df.head(3)
image.png

(2)對文本變量進(jìn)行轉(zhuǎn)換

(1) 查看文本變量名及種類
(2) 將文本變量Sex, Cabin 渗钉,Embarked用數(shù)值變量12345表示
(3) 將文本變量Sex彤恶, Cabin, Embarked用one-hot編碼表示


image.png
#方法三: 使用sklearn.preprocessing的LabelEncoder
from sklearn.preprocessing import LabelEncoder
for feat in ['Cabin', 'Ticket']:
    lbl = LabelEncoder()  
    label_dict = dict(zip(df[feat].unique(), range(df[feat].nunique())))
    df[feat + "_labelEncode"] = df[feat].map(label_dict)
    df[feat + "_labelEncode"] = lbl.fit_transform(df[feat].astype(str))

df.head()
image.png
#將類別文本轉(zhuǎn)換為one-hot編碼

#方法一: OneHotEncoder
for feat in ["Age", "Embarked"]:
#     x = pd.get_dummies(df["Age"] // 6)
#     x = pd.get_dummies(pd.cut(df['Age'],5))
    x = pd.get_dummies(df[feat], prefix=feat)
    df = pd.concat([df, x], axis=1)
    #df[feat] = pd.get_dummies(df[feat], prefix=feat)
    
df.head()
image.png

從純文本Name特征里提取出Titles的特征(所謂的Titles就是Mr,Miss,Mrs等

df['Title'] = df.Name.str.extract('([A-Za-z]+)\.', expand=False)
df.head()
image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末鳄橘,一起剝皮案震驚了整個濱河市声离,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌瘫怜,老刑警劉巖术徊,帶你破解...
    沈念sama閱讀 212,029評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異鲸湃,居然都是意外死亡赠涮,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,395評論 3 385
  • 文/潘曉璐 我一進(jìn)店門暗挑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來笋除,“玉大人,你說我怎么就攤上這事炸裆±” “怎么了?”我有些...
    開封第一講書人閱讀 157,570評論 0 348
  • 文/不壞的土叔 我叫張陵烹看,是天一觀的道長国拇。 經(jīng)常有香客問我,道長听系,這世上最難降的妖魔是什么贝奇? 我笑而不...
    開封第一講書人閱讀 56,535評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮靠胜,結(jié)果婚禮上掉瞳,老公的妹妹穿的比我還像新娘毕源。我一直安慰自己,他們只是感情好陕习,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,650評論 6 386
  • 文/花漫 我一把揭開白布霎褐。 她就那樣靜靜地躺著,像睡著了一般该镣。 火紅的嫁衣襯著肌膚如雪冻璃。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,850評論 1 290
  • 那天损合,我揣著相機(jī)與錄音省艳,去河邊找鬼。 笑死嫁审,一個胖子當(dāng)著我的面吹牛跋炕,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播律适,決...
    沈念sama閱讀 39,006評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼辐烂,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了捂贿?” 一聲冷哼從身側(cè)響起纠修,我...
    開封第一講書人閱讀 37,747評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎厂僧,沒想到半個月后扣草,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,207評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡颜屠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,536評論 2 327
  • 正文 我和宋清朗相戀三年德召,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片汽纤。...
    茶點(diǎn)故事閱讀 38,683評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖福荸,靈堂內(nèi)的尸體忽然破棺而出蕴坪,到底是詐尸還是另有隱情,我是刑警寧澤敬锐,帶...
    沈念sama閱讀 34,342評論 4 330
  • 正文 年R本政府宣布背传,位于F島的核電站,受9級特大地震影響台夺,放射性物質(zhì)發(fā)生泄漏径玖。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,964評論 3 315
  • 文/蒙蒙 一颤介、第九天 我趴在偏房一處隱蔽的房頂上張望梳星。 院中可真熱鬧赞赖,春花似錦、人聲如沸冤灾。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,772評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽韵吨。三九已至匿垄,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間归粉,已是汗流浹背椿疗。 一陣腳步聲響...
    開封第一講書人閱讀 32,004評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留糠悼,地道東北人届榄。 一個月前我還...
    沈念sama閱讀 46,401評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像绢掰,于是被迫代替她去往敵國和親痒蓬。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,566評論 2 349

推薦閱讀更多精彩內(nèi)容

  • 新一代工業(yè)互聯(lián)網(wǎng)平臺之三——極簡工業(yè)云平臺功能應(yīng)用與優(yōu)勢 大海_WH 1 極簡工業(yè)功能應(yīng)用 極簡工業(yè)平臺是一套OT...
    大海WH閱讀 235評論 0 0
  • 網(wǎng)絡(luò)基礎(chǔ)知識 計算機(jī)誕生 “第一臺計算機(jī)(ENIAC)于1946年2月,在美國誕生滴劲。提出程序存儲的是美國的數(shù)學(xué)家馮...
    水中的藍(lán)天閱讀 331評論 0 0
  • 我是黑夜里大雨紛飛的人啊 1 “又到一年六月攻晒,有人笑有人哭,有人歡樂有人憂愁班挖,有人驚喜有人失落鲁捏,有的覺得收獲滿滿有...
    陌忘宇閱讀 8,529評論 28 53
  • 信任包括信任自己和信任他人 很多時候,很多事情萧芙,失敗给梅、遺憾、錯過双揪,源于不自信动羽,不信任他人 覺得自己做不成,別人做不...
    吳氵晃閱讀 6,186評論 4 8
  • 步驟:發(fā)微博01-導(dǎo)航欄內(nèi)容 -> 發(fā)微博02-自定義TextView -> 發(fā)微博03-完善TextView和...
    dibadalu閱讀 3,131評論 1 3