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

熱線電話:13121318867

登錄
首頁精彩閱讀關(guān)于數(shù)據(jù)處理的幾個(gè)踩過坑的案例
關(guān)于數(shù)據(jù)處理的幾個(gè)踩過坑的案例
2018-08-15
收藏

關(guān)于數(shù)據(jù)處理的幾個(gè)踩過坑的案例

因?yàn)檫@段時(shí)間好忙,好久沒有更新,我怕失去你們,所以就寫了幾個(gè)我在數(shù)據(jù)處理中碰到的坑,就是分享給你們看下是不是你們也有這種情況,但是我寫到一般,腦子短路了,寫不出來了,只能寫了三種情況,后續(xù)想起來,我就來補(bǔ)。

1

空值的區(qū)別

這個(gè)問題,是針對(duì)大部分剛開始做數(shù)據(jù)分析的新手來說的,就是一定要注意,無論你的數(shù)據(jù)是為建模還是做數(shù)據(jù)分析。我說下這個(gè)情況是什么出現(xiàn)的,就是你現(xiàn)在有兩張表,然后你要用主表連另外一張表,另外一張表呢,假設(shè)只有一個(gè)變量以及一個(gè)主鍵,那么這個(gè)變量可以是字符也可以是數(shù)值,然后這個(gè)變量本來就有了非空,那么這時(shí)候假設(shè)你的主表有部分主鍵是不在這張表,那就意味著主表中的部分主鍵會(huì)在這張表中匹配不到,那么這時(shí)候你的主表是left join的情況下的話,你去練這張表,這時(shí)候你的變量空值其實(shí)是包含兩種情況:1、在變量中為空,2、這張表沒有主表的主鍵。實(shí)際上是這兩種情況,但是如果你這時(shí)候不做任何處理,那就數(shù)據(jù)分析,就會(huì)把這兩部分的缺失,變成同一類的客戶,但是你在業(yè)務(wù)上解釋是不一樣的。

2

處理客戶多條數(shù)據(jù)的情況

第一個(gè)例子:我們在日常進(jìn)件中,其實(shí)往往一個(gè)客戶在公司都是有多條記錄,你要取那一條這個(gè)問題這個(gè)之前講過,這是我實(shí)際中遇到的一個(gè)例子,我想統(tǒng)計(jì)一個(gè)客戶他從注冊到申請這段時(shí)間登錄次數(shù),這時(shí)候其實(shí)有個(gè)問題,有些客戶是注冊了很長時(shí)間,并且也有完成好幾筆單子,但是有些客戶他是剛注冊,然后申請,這時(shí)候你不論情況,就直接算客戶的登錄次數(shù),這就就會(huì)有誤差,那么現(xiàn)在從業(yè)務(wù)出發(fā),你需要規(guī)定的是,如果客戶只有一筆單,那么就只接算他的登錄次數(shù),那么如果客戶是以前是完成好幾筆單,你就應(yīng)該取上一筆單結(jié)束之后,到下一筆單申請之間申請的次數(shù),這樣子才能把全部的客戶拉到同一個(gè)標(biāo)準(zhǔn)去衡量登錄次數(shù)這個(gè)變量的特征。

第二個(gè)例子:假設(shè)你現(xiàn)在是想做一個(gè)客戶近6個(gè)月的通話次數(shù)穩(wěn)定性,那么這時(shí)候你拿到數(shù)據(jù),直接懟代碼,你會(huì)發(fā)現(xiàn)其實(shí)有些客戶根本就沒有6個(gè)月的通話記錄,有些客戶不止6個(gè)月的通話記錄,那么這時(shí)你應(yīng)該處理這種沒有6個(gè)月通話記錄,這里假設(shè)客戶手機(jī)在網(wǎng)時(shí)長不足6個(gè)月,那么這時(shí)候你可以先把這部分沒有6個(gè)月的客戶先置空,或者打一個(gè)特殊的標(biāo)簽,你知道他們就是不足6個(gè)月的,另外那些多于6個(gè)月的可以取在申請時(shí)間往后的6個(gè)月,那么這時(shí)候你算出來的穩(wěn)定性指標(biāo)才是把客戶基本拉到一個(gè)水平面比較的。這個(gè)穩(wěn)定性并不一定是psi,也可以是標(biāo)準(zhǔn)差,方差,這個(gè)衍生變量有說,這里就不說了。

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

若不方便掃碼,搜微信號(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)檢測極驗(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ù)說明請參見: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 = '請輸入'+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); }