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

熱線電話:13121318867

登錄
首頁精彩閱讀如何處理數(shù)據(jù)中的缺失值
如何處理數(shù)據(jù)中的缺失值
2016-04-01
收藏

如何處理數(shù)據(jù)中的缺失值

現(xiàn)實世界中的數(shù)據(jù)往往非常雜亂,未經(jīng)處理的原始數(shù)據(jù)中某些屬性數(shù)據(jù)缺失是經(jīng)常出現(xiàn)的情況。另外,在做特征工程時經(jīng)常會有些樣本的某些特征無法求出。路漫漫其修遠(yuǎn)兮,數(shù)據(jù)還是要繼續(xù)挖的,本文介紹幾種處理數(shù)據(jù)中缺失值的主要方法。

一、常用方法

1. 刪除

最簡單的方法是刪除,刪除屬性或者刪除樣本。如果大部分樣本該屬性都缺失,這個屬性能提供的信息有限,可以選擇放棄使用該維屬性;如果一個樣本大部分屬性缺失,可以選擇放棄該樣本。雖然這種方法簡單,但只適用于數(shù)據(jù)集中缺失較少的情況。

2. 統(tǒng)計填充

對于缺失值的屬性,尤其是數(shù)值類型的屬性,根據(jù)所有樣本關(guān)于這維屬性的統(tǒng)計值對其進(jìn)行填充,如使用平均數(shù)、中位數(shù)、眾數(shù)、最大值、最小值等,具體選擇哪種統(tǒng)計值需要具體問題具體分析。另外,如果有可用類別信息,還可以進(jìn)行類內(nèi)統(tǒng)計,比如身高,男性和女性的統(tǒng)計填充應(yīng)該是不同的。

3. 統(tǒng)一填充

對于含缺失值的屬性,把所有缺失值統(tǒng)一填充為自定義值,如何選擇自定義值也需要具體問題具體分析。當(dāng)然,如果有可用類別信息,也可以為不同類別分別進(jìn)行統(tǒng)一填充。常用的統(tǒng)一填充值有:“空”、“0”、“正無窮”、“負(fù)無窮”等。

4. 預(yù)測填充

我們可以通過預(yù)測模型利用不存在缺失值的屬性來預(yù)測缺失值,也就是先用預(yù)測模型把數(shù)據(jù)填充后再做進(jìn)一步的工作,如統(tǒng)計、學(xué)習(xí)等。雖然這種方法比較復(fù)雜,但是最后得到的結(jié)果比較好。

二、具體分析

上面兩次提到具體問題具體分析,為什么要具體問題具體分析呢?因為屬性缺失有時并不意味著數(shù)據(jù)缺失,缺失本身是包含信息的,所以需要根據(jù)不同應(yīng)用場景下缺失值可能包含的信息進(jìn)行合理填充。下面通過一些例子來說明如何具體問題具體分析,仁者見仁智者見智,僅供參考:

“年收入”:商品推薦場景下填充平均值,借貸額度場景下填充最小值;

行為時間點”:填充眾數(shù);

“價格”:商品推薦場景下填充最小值,商品匹配場景下填充平均值;

“人體壽命”:保險費用估計場景下填充最大值,人口估計場景下填充平均值;

“駕齡”:沒有填寫這一項的用戶可能是沒有車,為它填充為0較為合理;

本科畢業(yè)時間”:沒有填寫這一項的用戶可能是沒有上大學(xué),為它填充正無窮比較合理;


“婚姻狀態(tài)”:沒有填寫這一項的用戶可能對自己的隱私比較敏感,應(yīng)單獨設(shè)為一個分類,如已婚1、未婚0、未填-1。

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

若不方便掃碼,搜微信號: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(), // 加隨機數(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)的第一個參數(shù)驗證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務(wù)器是否宕機 new_captcha: data.new_captcha, // 用于宕機時表示是新驗證碼的宕機 product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計時完成 $(".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 = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+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); }