2011-10-19 76 views
9

是否有可能使用概率或NProbability函數來計算4個硬幣擲骰中的3個或更多個頭的概率。使用NProbability []或Probability []計算4個硬幣擲骰中的3個或更多頭的概率

這不是一個關於這個問題的簡單答案的問題,它更多的是理解如何用Mathematica使用分佈解決這類問題。

因此,使用4個隨機變量的分佈P

我希望這樣的事情會做的伎倆,但它不工作。我得到0.

P = BernoulliDistribution[0.5]; 
vars = List[Distributed[a,P],Distributed[b,P],Distributed[c,P],Distributed[c,P]]; 
NProbability[Count[ {a,b,c,d}, 1] >= 3, vars] 

任何想法將不勝感激。

+0

兩個錯誤有:C聲明兩次,從不使用Count而不是Total。 –

+0

也許@Sjoerd太客氣了。在他的修改後,OP的代碼可以工作 –

+0

Ha!所以它確實如此。雙聲明是該網站的複製粘貼錯誤。用Total而不是Count來做訣竅。非常感謝你們。 – Bart

回答

10

不使用MMA的這裏統計的專家,但這似乎工作:

l = TransformedDistribution[ 
     x + y + w + z, {x \[Distributed] BernoulliDistribution[0.5], 
         y \[Distributed] BernoulliDistribution[0.5], 
         z \[Distributed] BernoulliDistribution[0.5], 
         w \[Distributed] BernoulliDistribution[0.5]}]; 

Table[NProbability[x > i, x \[Distributed] l], {i, -1, 4}] 
(* 
{1, 0.9375, 0.6875, 0.3125, 0.0625, 0.} 
*) 
+0

哇。非常感謝!完美地解釋它:) – Bart

+0

在現在與leonid的mma技術會議。我們沒有太多的事情做其他事情。 –

+0

@Sjoerd會議?有或沒有啤酒? –

8
In[10]:= Probability[a + b + c + d >= 3, vars] 

Out[10]= 0.3125 

拋硬幣是更容易被BinomialDistribution描述:

In[12]:= Probability[m >= 3, m \[Distributed] BinomialDistribution[4, 0.5]] 

Out[12]= 0.3125 
+0

是的,這是一個更清潔。我注意到belisarius建議的TransformedDistribution被評估爲BinomialDistribution。 Thankyou :) – Bart

+0

@Bart我以爲你故意這樣做,因爲你想知道如何添加隨機變量!哈!傻我。 –

+0

@belisarius我確實想知道如何添加隨機變量,而不僅僅是這個同步投幣問題。所以它被評估爲BinomialDist在這個特例中只是一個有趣的點。你提供的是我真正想要的東西,對這些計算方式的一般理解。所以你是在發現! :) – Bart