2013-02-18 62 views
1

我試圖做出二項分佈一個簡單圖中R.統計:R中二項分佈和簡單的圖形

所以,問題是「有20個例,什麼是對4運行的概率患者成功,(概率= 0.8)「。

我所做的是

x <- rbinom(4, size= 20, prob = 0.8) 
y <- pbinom(x, size = 20, prob = 0.8) 
plot(y, type="l") 

但我不知道這是否是繪圖它的正確方法..

+0

你想要繪製究竟什麼_are_? – 2013-02-18 10:46:28

回答

5

一般情況下,你的可視化問題來了,當你的問題是一樣的東西:

考慮到成功的概率是0.8,在20次操作中有「至少」16次成功的概率是多少?

p(x=k) = choose(n, k) * .8^k * .2^(n-k) # equivalent to dbinom(k, n, prob=0.8) 

我們需要同樣爲k = 16..20,總結所有這些值來獲得sucess的概率至少在16個20:

這可以通過使用二項公式是完成。

sum(dbinom(16:20, 20, prob=0.8)) # 0.6296483 

注意,在這個成功率(0.8)至少4次成功的概率將只是1。也就是說,我們最肯定會有至少4次成功:這是使用dbinom爲已完成。這就是爲什麼我選擇了相對較高的成功率。

要繪製這(使用ggplot2):

df <- data.frame(x=1:20, prob=dbinom(1:20, 20, prob=0.8)) 
require(ggplot2) 
ggplot(data=dd, aes(x=x,y=prob)) + geom_line() + 
     geom_ribbon(data=subset(dd,x>=16 & x<=20),aes(ymax=prob),ymin=0, 
        fill="red", colour = NA, alpha = 0.5) 

這給了你這樣的:

ggplot2_binomial

希望這有助於。

+0

請注意:在上面的代碼中,'df'更改爲'dd'。 – RobertMc 2016-09-11 15:46:44