99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁(yè)精彩閱讀數(shù)據(jù)探索和數(shù)據(jù)準(zhǔn)備的步驟
數(shù)據(jù)探索和數(shù)據(jù)準(zhǔn)備的步驟
2018-02-22
收藏

數(shù)據(jù)探索和數(shù)據(jù)準(zhǔn)備的步驟

如我們所知,數(shù)據(jù)分析工作的70%的時(shí)間都用作于數(shù)據(jù)清洗,數(shù)據(jù)探索和數(shù)據(jù)準(zhǔn)備當(dāng)中,這可以說(shuō)是數(shù)據(jù)分析的核心所在。數(shù)據(jù)清洗主要是工具層面上的,這里先不討論。我們這里討論數(shù)據(jù)探索和數(shù)據(jù)準(zhǔn)備的六大步驟。

變量的識(shí)別

單變量的分析

雙變量的分析

處理缺失值

處理異常值

特征提取(Feature Engineering)

變量的識(shí)別

在對(duì)數(shù)據(jù)分析之前,我們需要去識(shí)別變量,去了解變量的類型和數(shù)據(jù)的類型。比如判別變量是分類型變量的還是連續(xù)型變量,是二分類還是有序變量。這些知識(shí)在任何一本統(tǒng)計(jì)學(xué)書上第一章都會(huì)詳細(xì)介紹。圖片來(lái)自于哈佛大學(xué)數(shù)據(jù)分析課程

單變量的分析

識(shí)別完變量之后,我們算是初步的了解了數(shù)據(jù)的全貌,知道其大概表示什么。接下來(lái)我們應(yīng)該對(duì)每一個(gè)變量進(jìn)行分析,以期更深入的了解數(shù)據(jù),并希望從中得到一個(gè)假設(shè),以便接下來(lái)的檢驗(yàn)。對(duì)于單變量的分析,我們根據(jù)單變量的類型進(jìn)行特定的分析。
連續(xù)型變量

概括性度量:均數(shù),中位數(shù),眾數(shù),最大值,最小值,極差,百分位數(shù),四分位數(shù),方差,標(biāo)準(zhǔn)差,偏度和峰度。

圖形:直方圖箱型圖

檢驗(yàn):檢驗(yàn)其分布:P-P圖和K-S單樣本檢驗(yàn)

分類型變量:主要是要頻數(shù)表(頻率表)去了解其分布,圖形主要是用條形圖,也可以用游程檢驗(yàn)去檢驗(yàn)其是否隨機(jī),以判定抽樣是否隨機(jī)。

雙變量的分析

進(jìn)行完單變量的分析后,我們對(duì)數(shù)據(jù)有了更深的理解,下面我們?cè)撨M(jìn)行雙變量的分析。我們進(jìn)行雙變量的分析主要有兩個(gè)目的,第一,我們想知道我們的目標(biāo)變量與已知變量之間有什么關(guān)系;第二,我們想驗(yàn)證在單變量分析中得出的假設(shè)。雙變量的分析可以分為三類:
連續(xù)型與連續(xù)型:對(duì)于兩個(gè)連續(xù)型數(shù)據(jù)的分析,我們主要是用散點(diǎn)圖和相關(guān)系數(shù)去判定。通過(guò)散點(diǎn)圖看出兩者是否有線性關(guān)系,在通過(guò)計(jì)算相關(guān)系數(shù)去判定關(guān)系的強(qiáng)弱。
分類型與分類型:而對(duì)于兩個(gè)分類型數(shù)據(jù)的分析,我們可以用交叉分組表,堆積條形圖和卡方檢驗(yàn)去驗(yàn)證兩者之間的關(guān)系。
分類型與連續(xù)型:分類型和連續(xù)型數(shù)據(jù)的分析,我們主要用到t檢驗(yàn)和方差分析

處理缺失值

在數(shù)據(jù)分析中,缺失值是一個(gè)很讓人頭疼的問(wèn)題,有時(shí)候缺失值過(guò)多,以至于根本無(wú)法進(jìn)行數(shù)據(jù)分析。我們這里討論一下如何處理數(shù)據(jù)中的缺失值。
缺失值產(chǎn)生的原因無(wú)外乎兩個(gè):一、數(shù)據(jù)提取時(shí)出錯(cuò),也就是自己操作出錯(cuò),這個(gè)很好說(shuō),重新提取或檢查一遍即可;二、數(shù)據(jù)收集時(shí)出錯(cuò),這個(gè)很就不好解決。
缺失值處理

刪除:1.整行刪除:對(duì)有缺失值的數(shù)據(jù),整行刪除。這樣雖然簡(jiǎn)單,但是也削弱了模型的功能;2.只刪除缺失值:這樣雖然保存了較多的數(shù)據(jù),但是使得數(shù)據(jù)中不同的變量有不同的樣本量,不利于比較。

替代:計(jì)算其均值/中位數(shù)/眾數(shù)去代替缺失值,這也是最常用的方法。

預(yù)測(cè)模型:以沒(méi)有缺失值的數(shù)據(jù)為訓(xùn)練數(shù)據(jù),以有缺失值的數(shù)據(jù)為測(cè)試數(shù)據(jù),建立預(yù)測(cè)模型,預(yù)測(cè)其缺失值。缺點(diǎn)是,若變量之間沒(méi)有關(guān)系,則預(yù)測(cè)的值根本不準(zhǔn)。

KNN代替:用最鄰近算法計(jì)算出其最鄰近的屬性,以那個(gè)屬性的值代替缺失值。優(yōu)點(diǎn)是,不管是分類型還是數(shù)值型的都可以操作,缺點(diǎn)是,太費(fèi)時(shí)間。

處理異常值

對(duì)于異常值,我們可以說(shuō)是對(duì)它喜憂參半,如果異常值是自然存在的,我們就可以對(duì)異常值進(jìn)行一系列分析,比如用于欺詐檢測(cè),入侵檢測(cè)等。但是大部分異常值的是人為產(chǎn)生的,其產(chǎn)生原因可能是錄入錯(cuò)誤、測(cè)量誤差、實(shí)驗(yàn)誤差、抽樣誤差等產(chǎn)生。這些異常值通常會(huì)混淆我們的視聽,影響我們對(duì)數(shù)據(jù)的理解,破壞數(shù)據(jù)之間的聯(lián)系,因此我們?cè)搶W(xué)會(huì)如何去處理異常值。
檢測(cè)異常值:

圖形:箱圖、直方圖、散點(diǎn)圖

在1.5倍的四分位差之外的數(shù)據(jù)可定為異常值

在數(shù)據(jù)的5%-95%之外的數(shù)據(jù)可定為異常值

在均值的三個(gè)標(biāo)準(zhǔn)差之外的數(shù)據(jù)

用聚類分析的方法檢測(cè)異常值(馬氏距離和Cook’s D距離)

處理異常值:

刪除:如果是錄入錯(cuò)誤,或數(shù)據(jù)為很小的一部分即可刪除。

轉(zhuǎn)換變量和聚類:有時(shí)候通過(guò)一些簡(jiǎn)單的變量轉(zhuǎn)換和聚類即可減少異常值對(duì)整體數(shù)據(jù)的影響

替換:用均值/中位數(shù)/眾數(shù)去代替異常值

分開處理:若其為自然的異常值,且數(shù)據(jù)較多,我們就可以將其另分一組,進(jìn)行分析

特征提取(Feature Engineering)

在建模之前,特征提取是極其重要的步驟,它的好壞直接影響你模型的好壞,所以我們必須去學(xué)習(xí)如何實(shí)現(xiàn)特征提取。
特征提取就是從已知的數(shù)據(jù)中提取更多的信息,你不加入任何數(shù)據(jù),但是你卻讓你的數(shù)據(jù)更加有用。
特征提取的方法有:變量轉(zhuǎn)換和變量創(chuàng)建。
變量轉(zhuǎn)換:當(dāng)我們需要改變數(shù)據(jù)的度量(標(biāo)準(zhǔn)化)或需要把非相關(guān)改為相關(guān)或改變變量分布時(shí),我們需要用到變量轉(zhuǎn)換,比如進(jìn)行對(duì)數(shù),平方/立方根,分組等方式。
變量創(chuàng)建:我們都是基于現(xiàn)有的變量來(lái)創(chuàng)建新變量。比如說(shuō)我們可以以上變量轉(zhuǎn)換的方法形成新的變量,也可以把分類變量進(jìn)行數(shù)值化,以便于分析等。
總結(jié)一下:進(jìn)行數(shù)據(jù)探索我們需要6個(gè)步驟

識(shí)別變量:分類型?數(shù)值型?

單變量分析:數(shù)值描述,圖表描述,檢驗(yàn)分布

雙變量分析:線性關(guān)系?相關(guān)?

處理缺失值:刪除?代替?預(yù)測(cè)?

處理異常值:如何檢測(cè)?如何移除?

特征提取:一般有哪些提取方法?

以上就是數(shù)據(jù)探索和數(shù)據(jù)準(zhǔn)備的一些步驟,這些步驟不去實(shí)踐永遠(yuǎn)都不會(huì)用作用,所以我們應(yīng)該去多做分析,多去探索,如果你的英語(yǔ)不錯(cuò),kaggle是一個(gè)好的去處。


數(shù)據(jù)分析咨詢請(qǐng)掃描二維碼

若不方便掃碼,搜微信號(hào):CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個(gè)參數(shù)驗(yàn)證碼對(duì)象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個(gè)配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺(tái)檢測(cè)極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時(shí)表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說(shuō)明請(qǐng)參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時(shí)完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請(qǐng)輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請(qǐng)輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }