2015-09-11 11 views
5

私はRが初めてで、2つの入力pとqを持つダブルサム関数を書こうとしています。例えば、WolframAlphaに私の合計を計算するために、私はp = .6q = .5二重和を書くにはR

ため

Sum[p^25 * (1-q)^j * Sum[(25 choose r) * ((j-1) choose (r-1)) * ((q * (1-p))/(p * (1 - q)))^r,{r,1,25}],{j,0,23}] 

Here's an exampleを使用これはRで書くのは簡単でなければなりませんが、私はそうする方法を見つけ出すことはできません。 (私は選択機能がchoose(n,k)になることを認識していますが、合計は難しくなっています)

ありがとうございました。

+1

ようこそ。 WolframAlphaの例を提供するための+1。 – jlhoward

答えて

3

ここに1つの方法です:

p <- 0.6 
q <- 0.5 
qp <- q*(1-p)/(p*(1-q)) 
f <- function(r,j) choose(25,r)*choose(j-1,r-1)*qp^r 
g <- function(j) p^25*(1-q)^j*sum(sapply(1:25,f,j)) 
sum(sapply(1:23,g)) 
# [1] 0.721113 

あなたが代わりにfgの無名関数を使用すると、1行にすべてを置くが、IMO、これは少し混乱している可能性があります。

関連する問題