Count the number of heads per set in Mathematica

2019-06-04 15:59发布

First of all, thank you for all your responces. I am doing my best to keep up with all the suggestions. However I'm trying to stay on track.

So now I have

s = Table[RandomChoice[{Heads, Tails}, 2 i + 1], {i, 10}];

Next, I want to count the number of "Heads" that occur for each "i".

I can do this for one case....say 5,

n = RandomChoice[{Heads, Tails}, 5];
n1 = Count[n, Heads];

But I am having trouble expanding this....

Thanks again.

p.s. what are down votes? Too easy?

2条回答
Luminary・发光体
2楼-- · 2019-06-04 16:16

Map (/@) the function of counting heads in a list:

Count[#, Heads]&

to each sublist in s. Hence:

Count[#, Heads]& /@ s
查看更多
\"骚年 ilove
3楼-- · 2019-06-04 16:36

If you are doing a simulation of coin flips, I believe that BinomialDistribution is what you want.

Histogram[
  Count[#, "Heads"] & /@
    Table[RandomChoice[{"Heads", "Tails"}, 9], {25000}]
]

enter image description here

BarChart@Table[PDF[BinomialDistribution[9, 1/2], k], {k, 0, 9}]

enter image description here

By the way, the symbol Heads is a built-in function and should probably not be used the way you are using it.

查看更多
登录 后发表回答