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

熱線電話:13121318867

登錄
首頁精彩閱讀使用R進行統(tǒng)計分析—概率計算
使用R進行統(tǒng)計分析—概率計算
2016-10-01
收藏

使用R進行統(tǒng)計分析—概率計算

R語言中提供了很多概率函數(shù),可以方便的計算事件發(fā)生的概率。如二項分布概率函數(shù)和泊松分布概率函數(shù)。本篇文章介紹如果使用R語言中的這些函數(shù)求解事件發(fā)生的概率。

概率函數(shù)和前綴

R語言中每個概率分布都有對應的函數(shù)名稱,例如二項分布是binmo,泊松分布是pois,正態(tài)分布是norm等等。每個函數(shù)都分別有四個不同的前綴,加上前綴可以生成隨機數(shù),求解概率和臨界值等等。下面是四個前綴對應功能的說明。

r = random = 隨機

d= density = 密度

p= probability = 概率

q =quantile = 分位

二項分布概率

假設網站的Landingpage頁面中共有20個入口,那么我們預估每個入口被點擊的概率為1/20,即P=0.05。(實際情況會復雜一些,每個入口在頁面中的位置和展現(xiàn)的形式都 會不一樣,一般首屏的入口比后面的入口會獲得更多點擊,圖片和按鈕形式的入口比文字類的入口更容易受到關注,導航和焦點圖和Action按鈕比其他類型的入口更容易 被點擊。如有要獲得最真實的點擊概率,需要參考這個頁面中每個入口的歷史點擊概率數(shù)據(jù),這里我們只是假設一種理想情況來說明計算過程。)那么在10000次點擊中, 關鍵按鈕獲得550次的概率是多少?

先來簡單介紹下R語言中的二項分布函數(shù)和其中參數(shù)的含義,二項分布函數(shù)為binom,前綴d表示求密度,前綴p表示求累計概率。參數(shù)中X表示實驗的成功次數(shù),size表示實驗次數(shù),prob表示概率值。在這個例子中成功次數(shù)是550,實驗次數(shù)是10000,概率為0.05。

#點擊率0.05的情況下10000次點擊中關鍵按鈕恰好被點擊550次的概率

> dbinom(x = 550,size = 10000,prob = 0.05)

[1] 0.001362855

經過計算10000次點擊中關鍵按鈕恰好被點擊550次的概率為0.0013,這只是550次這個事件發(fā)生的概率值,并不包含549次點擊和551次點擊。但實際情況中恰好獲得550并不是我們實際的目標。因此我們換一種計算方法再來看下。

#點擊率0.05的情況下10000次點擊中關鍵按鈕被點擊1-550次的概率

> sum(dbinom(x = 1:550,size = 10000,prob = 0.05))

[1] 0.9889429

在成功次數(shù)X中從之前的550變成了1:550,然后進行sum求和。獲得從1點點擊到550次點擊的累計概率。從結果中可以看到概率高達0.98。這能說明10000次點擊中關鍵按鈕獲得550次點擊的概率非常高嗎?我們能信心滿滿的說獲得550次點擊是個高概率事件嗎?恐怕還不行。因為這是一個累計概率值,是從1次到550次的匯總。但我們的目標是獲得550次或更多的點擊,那么550次以下的點擊量概率其實是我們不需要的。因此實際的概率值沒有這么高。

> pbinom(q = 550,size = 10000,prob = 0.05)

[1] 0.9889429

計算積累概率值還有一個更簡單的方法就是在二項分布概率函數(shù)的前面加前綴p,就可以自動獲得550次點擊的累計概率值了。結果與前面的方法一致。

#點擊率0.05的情況下10000次點擊中關鍵按鈕獲得500次到550次區(qū)間的點擊的概率

> sum(dbinom(x = 500:550,size = 10000,prob = 0.05))

[1] 0.4953496

前面兩種方法獲得的概率值一個太低,一個太高。還有一種方法是只計算某個區(qū)間的概率值,這里我們將獲得點擊的次數(shù)限定在500次——550次之間,來求這一區(qū)間的概率值。從結果來看10000次點擊中關鍵按鈕獲得500次——550次點擊的概率為0.49。

#點擊率0.05的情況下10000次點擊中關鍵按鈕分別獲得500次到550次點擊的概率

> dbinom(x = 500:550,size = 10000,prob = 0.05)

[1] 0.018301669 0.018265138 0.018190454 0.018078155 0.017929014 0.017744025 0.017524393 0.017271524 0.016987006 0.016672594 0.016330195

[12] 0.015961845 0.015569690 0.015155968 0.014722985 0.014273095 0.013808680 0.013332131 0.012845824 0.012352105 0.011853270 0.011351550

[23] 0.010849097 0.010347966 0.009850108 0.009357356 0.008871418 0.008393869 0.007926149 0.007469553 0.007025237 0.006594211 0.006177343

[34] 0.005775361 0.005388857 0.005018291 0.004663995 0.004326183 0.004004957 0.003700313 0.003412150 0.003140280 0.002884435 0.002644275

[45] 0.002419399 0.002209352 0.002013632 0.001831702 0.001662993 0.001506913 0.001362855

以上是點擊量500次——到550次分解的概率值,0.49的概率值由以上的各個概率匯總而來。

#點擊率0.05的情況下10000次點擊中關鍵按鈕獲得550次以上點擊的概率

> sum(dbinom(x = 551:10000,size = 10000,prob = 0.05))

[1] 0.01105708

再來看最開始的問題,10000次點擊中關鍵按鈕獲得550次點擊的概率。550次以下的點擊不是我們希望的結果,因此我們再來看下點擊量超過550次的概率有多少。從結果 來看獲得點擊量在551次——10000次的概率僅為0.011,因此獲得超過550次以上的點擊的概率比較低。

#點擊率0.05的情況下10000次點擊中關鍵按鈕獲得550次以上點擊的概率

> 1-pbinom(q = 550,size = 10000,prob = 0.05)

[1] 0.01105708

由于從0到10000次點擊的所有概率為1,因此用1減550次以下的概率值也能獲得相同的結果。

泊松分布概率

假設在一次市場活動中,上一個小時中有40個用戶注冊,那么下一個小時有50個用戶注冊的概率是多少?

這里需要使用泊松分布概率函數(shù),泊松分布函數(shù)是pois,第一個參數(shù)x是下一個時間段事件發(fā)生的次數(shù),lambda是上一個時間段事件發(fā)生的次數(shù)。在這個例子中x=50, lambda=40。

#上一小時產生40個注冊用戶,下一小時產生恰好50個注冊用戶的概率

> dpois(x =50,lambda=40)

[1] 0.01770702

經過計算,下一個小時恰好有50個注冊用戶的概率為0.017。與二項分布中的問題一樣,0.017是恰好50個用戶的概率。不是49個用戶也不是51個用戶的概率。

#上一小時產生40個注冊用戶,下一小時產生1-50個注冊用戶的概率

> sum(dpois(x =1:50,lambda=40))

[1] 0.947372

把下一小時注冊用戶的數(shù)量改為1:50,并進行求和,獲得了下一個小時獲得1-50個注冊用戶的累計概率值。這個值有0.94。但我們的目標是50個注冊用戶,雖然概率很高 但低于50的事件發(fā)生并不是我們的目標。

> ppois(q =50,lambda=40)

[1] 0.947372

這是另一種計算方法,把泊松分布函數(shù)的前綴換為p,計算50個注冊用戶的累計概率值,結果與前面的方法一致。

#上一小時產生40個注冊用戶,下一小時產生40-50個注冊用戶區(qū)間的概率

> sum(dpois(x =40:50,lambda=40))

[1] 0.4684008

前一小時40個注冊用戶,后一個小時目標50個注冊用戶,我們來看下下一個小時注冊用戶是40-50這個區(qū)間的概率是多少。經過計算這個區(qū)間發(fā)生的概率為0.46。

#上一小時產生40個注冊用戶,下一小時分別產生40-50個注冊用戶的概率

> dpois(x =40:50,lambda=40)

[1] 0.06294704 0.06141175 0.05848738 0.05440686 0.04946078 0.04396514 0.03823056 0.03253664 0.02711387 0.02213377 0.01770702

這里顯示了40-50個注冊用戶分別的發(fā)生概率,0.46的概率值由以上各個概率值匯總計算獲得。

#上一小時產生40個注冊用戶,下一小時產生50個注冊用戶以上的概率

>1-ppois(q =50,lambda=40)

[1] 0.05262805

最后再來看下下一個小時注冊用戶數(shù)量超過50的概率。用1減去50個用戶的累計概率值就是超過50個注冊用戶發(fā)生的概率,計算結果是0.052,因此下一個小時獲得超過50個注冊用戶的概率不高。文章來源:cda數(shù)據(jù)分析師官網


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

若不方便掃碼,搜微信號:CDAshujufenxi

數(shù)據(jù)分析師考試動態(tài)
數(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(); // 調用 initGeetest 進行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調,回調的第一個參數(shù)驗證碼對象,之后可以使用它調用相應的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務器是否宕機 new_captcha: data.new_captcha, // 用于宕機時表示是新驗證碼的宕機 product: "float", // 產品形式,包括: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); }