2016-11-15 5 views
0

私は基本的にコートや人に関する関数を作成しようとしています。無作為にコートを混ざっている場合、平均で何人もの人々がコートを完成させるでしょう。 k人の人数で私はそれが私の答えを返していない関数を呼び出すときにここに私の関数である、しかし:順列マッチング関数

Umbrella=function(k) 
m=rep(0,10000) 
for (i in 1:10000){ 
Umbrellas=sample(1:k,k) 
Heads=sample(1:k,k) 
m[i]=sum(Umbrellas==Heads) 
} 
m[i] 

答えて

0

私はあなたがRを使用して、あなたはそれにかなり新しいしていることを前提としています。

function(k)の後ろの中かっこを忘れてしまい、機能の最後に閉じ括弧もありませんでした。また、m[i](番目の要素、m)だけを返すようにコードを書いていますが、シミュレーションごとに正しい「人物コートマッチ」の数にもっと興味があると思います。

Umbrella <- function(k){ 
    m = rep(0, 10000) 
    for(i in 1:10000){ 
    umbrellas <- sample(1:k, k)  
    heads <- sample(1:k, k) 
    m[i] <- sum(umbrellas == heads) 
    } 
    return(m) 
} 

注:10.000シミュレーションを行っているので、mがゼロとk間10.000の値を持つベクトルになります。

+0

これを関数として実行した場合、最大10000の大きなベクトルが返され、すべてが出力されません。正しい一致の単一の値を返すにはどうすればよいでしょうか? @GeorgiaDickinson。 –

+0

。あなたが何を言っているのか分かりません。あなたはm値の平均をお探しですか?または、合計ですか? –

+0

私は、傘が=頭部である確率 –

関連する問題