Kaggle 教程系列:探索數(shù)據(jù)

在上一篇文章中足删,我們通過決策樹模型寿谴,對機器學習有了初步的認識;但是在整個數(shù)據(jù)分析的生命周期中失受,建模并不是第一位的讶泰,當我們拿到數(shù)據(jù)后,首先要對數(shù)據(jù)進行觀察拂到、解讀峻厚,從中發(fā)現(xiàn)我們所需要的特征變量,本文將簡要介紹如何通過Pandas對數(shù)據(jù)進行觀察與探索谆焊。

Pandas

就像我們前面提到的惠桃,任何機器學習、數(shù)據(jù)分析的第一步都是要先了解數(shù)據(jù)、解讀數(shù)據(jù)辜王, Pandas 是基于NumPy 的一種工具劈狐,該工具是為了解決數(shù)據(jù)分析任務而創(chuàng)建的。它納入了大量庫和一些標準的數(shù)據(jù)模型呐馆,提供了高效地操作大型數(shù)據(jù)集所需的工具肥缔。

有了Pandas,我們能快速便捷地處理數(shù)據(jù)汹来,你很快就會發(fā)現(xiàn)续膳,它是使Python成為強大而高效的數(shù)據(jù)分析環(huán)境的重要因素之一。

通常我們在使用中將pandas縮寫為pd收班,而Numpy縮寫為np

import pandas as pd
import numpy as np

Pandas中最重要的部分莫過于DataFrame了坟岔,有過數(shù)據(jù)庫基礎的讀者可以將它視為一個Excel的Sheet或SQL數(shù)據(jù)表。

Pandas 提供了許多強大的方法供您進行數(shù)據(jù)操作摔桦。

例如社付,接下來我們將演示如何使用Pandas觀察澳大利亞墨爾本的房價數(shù)據(jù);Kaggle提供了一套愛荷華州的房價數(shù)據(jù)供您練習邻耕,您可以稍后在練習環(huán)境中回顧本文學到的知識鸥咖。

示例數(shù)據(jù)路徑在:../input/melbourne-housing-snapshot/melb_data.csv

我們通過下面的代碼來加載數(shù)據(jù):

# 將路徑保存到變量,防止多處硬編碼
melbourne_file_path = '../input/melbourne-housing-snapshot/melb_data.csv'
# 從csv文件中讀取數(shù)據(jù)兄世,保存在名為 melbourne_data的DataFrame中
melbourne_data = pd.read_csv(melbourne_file_path) 
# 輸出數(shù)據(jù)的統(tǒng)計信息啼辣,包含無缺數(shù)據(jù)量,最大值御滩、最小值鸥拧、均值、標準差艾恼,四分位數(shù)住涉,下面將會詳細介紹。
melbourne_data.describe()
統(tǒng)計輸出

解釋數(shù)據(jù)

describe輸出了一個8行n列的數(shù)據(jù)表

count

count行統(tǒng)計了此列共有多少行沒有缺失值钠绍,即:

某列具有缺失值的行 = 總行數(shù) - count;

出現(xiàn)缺失值可能有很多原因舆声,例如調(diào)查1室1廳的房屋時,不會詢問是否有第二個臥室柳爽。

mean

平均值媳握,即是算術(shù)平均值,反應此列特征的一般水平磷脯。

std

標準差蛾找,反應此列數(shù)據(jù)的離散程度,一個較大的標準差赵誓,代表大部分數(shù)值和其平均值之間差異較大打毛;一個較小的標準差柿赊,代表這些數(shù)值較接近平均值。

min幻枉、25%碰声、50%、75%熬甫、max

min max分別是最小值和最大值胰挑。

25%、50%椿肩、75%為四分位數(shù)瞻颂,分位數(shù)是將總體的全部數(shù)據(jù)按大小順序排列后,處于各等分位置的變量值郑象。如果將全部數(shù)據(jù)分成相等的兩部分贡这,它就是中位數(shù);如果分成四等分扣唱,就是四分位數(shù)藕坯。

  • 第一四分位數(shù) (Q1)团南,又稱“較小四分位數(shù)”噪沙,等于該樣本中所有數(shù)值由小到大排列后第25%的數(shù)字。

  • 第二四分位數(shù) (Q2)吐根,又稱“[中位數(shù)]”浮梢,等于該樣本中所有數(shù)值由小到大排列后第50%的數(shù)字萝嘁。

  • 第三四分位數(shù) (Q3),又稱“較大四分位數(shù)”,等于該樣本中所有數(shù)值由小到大排列后第75%的數(shù)字坑傅。

  • 第三四分位數(shù)與第一四分位數(shù)的差距又稱[四分位距](InterQuartile Range,IQR)。

通過四分位數(shù)矾兜,可以看出一個變量的分布情況是左偏寸宵、右偏或?qū)ΨQ分布。

進入練習

點擊下面的網(wǎng)址進入練習題术幔,您可能先要注冊并登錄kaggle

https://www.kaggle.com/kernels/fork/1258954

本練習將測試您讀取數(shù)據(jù)和對數(shù)據(jù)進行統(tǒng)計觀察的能力另萤,對有基礎的讀者來說,這可能很簡單诅挑,但本教程是一個循序漸進的過程四敞,后面將會有更多更深入的數(shù)據(jù)預處理、模型構(gòu)建拔妥、模型改進的練習忿危。

課程中使用了墨爾本的數(shù)據(jù),為了保證練習效果没龙,避免直接抄襲課件铺厨,您必須使用新的數(shù)據(jù)集缎玫,來自愛荷華州的房價數(shù)據(jù)。

在此練習中解滓,你要學習使用Notebook編碼環(huán)境碘梢,如果您不熟悉,可以觀看一個90秒的介紹視頻(有墻)

首先要將這段初始化代碼運行一下伐蒂,鼠標點進去按Shift+Enter煞躬,下方顯示 Setup Complete,表示執(zhí)行成功逸邦。

# Set up code checking
from learntools.core import binder
binder.bind(globals())
from learntools.machine_learning.ex2 import *
print("Setup Complete")
Setup Complete

如果不執(zhí)行這段代碼恩沛,下面的代碼將無法執(zhí)行,例如:

未初始化報錯

第一步缕减,加載數(shù)據(jù)

您需要完善下面的代碼雷客,然后按Shift+Enter執(zhí)行代碼,加載數(shù)據(jù)

import pandas as pd

# Path of the file to read
iowa_file_path = '../input/home-data-for-ml-course/train.csv'

# Fill in the line below to read the file into a variable home_data
home_data = pd.read_csv(_)

# Call line below with no argument to check that you've loaded the data correctly
step_1.check()

step_1.check()會對您的結(jié)果進行檢查桥狡,如果填寫正確搅裙,將會有綠色的Correct字樣

回答正確

當然,如果您不知道怎么做裹芝,可以取消下面這段二級提示代碼的注釋部逮,運行它;其中第一級提示hint()為您講解需要使用什么技術(shù)嫂易,第二級提示Solution給出了正確的源代碼兄朋,如果您只是需要一點技術(shù)提示,請先看看hint()的提示是否能夠喚起你的記憶怜械。

# Lines below will give you a hint or solution code
# step_1.hint()
# step_1.solution()

例如:

# Lines below will give you a hint or solution code
step_1.hint()
step_1.solution()
二級提示

最后颅和,通過本文,我們了解到Pandas的冰山一角缕允,并且掌握了打開kaggle練習題的正確姿勢峡扩,為了避免被噴,以后的文章中不再對這部分重復講解障本。

原文地址

https://www.kaggle.com/dansbecker/explore-your-data

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末教届,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子彼绷,更是在濱河造成了極大的恐慌巍佑,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,692評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件寄悯,死亡現(xiàn)場離奇詭異萤衰,居然都是意外死亡,警方通過查閱死者的電腦和手機猜旬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,482評論 3 392
  • 文/潘曉璐 我一進店門脆栋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來倦卖,“玉大人,你說我怎么就攤上這事椿争∨绿牛” “怎么了?”我有些...
    開封第一講書人閱讀 162,995評論 0 353
  • 文/不壞的土叔 我叫張陵秦踪,是天一觀的道長褐捻。 經(jīng)常有香客問我,道長椅邓,這世上最難降的妖魔是什么柠逞? 我笑而不...
    開封第一講書人閱讀 58,223評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮景馁,結(jié)果婚禮上板壮,老公的妹妹穿的比我還像新娘。我一直安慰自己合住,他們只是感情好绰精,可當我...
    茶點故事閱讀 67,245評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著透葛,像睡著了一般笨使。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上获洲,一...
    開封第一講書人閱讀 51,208評論 1 299
  • 那天阱表,我揣著相機與錄音殿如,去河邊找鬼贡珊。 笑死,一個胖子當著我的面吹牛涉馁,可吹牛的內(nèi)容都是我干的门岔。 我是一名探鬼主播,決...
    沈念sama閱讀 40,091評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼烤送,長吁一口氣:“原來是場噩夢啊……” “哼寒随!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起帮坚,我...
    開封第一講書人閱讀 38,929評論 0 274
  • 序言:老撾萬榮一對情侶失蹤妻往,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后试和,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體讯泣,經(jīng)...
    沈念sama閱讀 45,346評論 1 311
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,570評論 2 333
  • 正文 我和宋清朗相戀三年阅悍,在試婚紗的時候發(fā)現(xiàn)自己被綠了好渠。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片昨稼。...
    茶點故事閱讀 39,739評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖拳锚,靈堂內(nèi)的尸體忽然破棺而出假栓,到底是詐尸還是另有隱情,我是刑警寧澤霍掺,帶...
    沈念sama閱讀 35,437評論 5 344
  • 正文 年R本政府宣布匾荆,位于F島的核電站,受9級特大地震影響杆烁,放射性物質(zhì)發(fā)生泄漏棋凳。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,037評論 3 326
  • 文/蒙蒙 一连躏、第九天 我趴在偏房一處隱蔽的房頂上張望剩岳。 院中可真熱鬧,春花似錦入热、人聲如沸拍棕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,677評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽绰播。三九已至,卻和暖如春尚困,著一層夾襖步出監(jiān)牢的瞬間蠢箩,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,833評論 1 269
  • 我被黑心中介騙來泰國打工事甜, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留谬泌,地道東北人。 一個月前我還...
    沈念sama閱讀 47,760評論 2 369
  • 正文 我出身青樓逻谦,卻偏偏與公主長得像掌实,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子邦马,可洞房花燭夜當晚...
    茶點故事閱讀 44,647評論 2 354

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