从 R 中的抛硬币模拟计算观测值
Calculating observed values from a coin-toss simulation in R
我有一个数据框,它是通过 运行 模拟抛两次硬币 1000 次而编译的。
即每次测试都会抛出两枚硬币。测试重复 1000 次。
头是 1,尾是 2。
这是数据框的预览。
X1 X2
1 X1 2 1
2 X2 1 1
3 X3 1 2
4 X4 1 1
5 X5 1 1
6 X6 1 2
7 X7 1 2
8 X8 1 2
9 X9 1 1
10 X10 2 1
它包含 2 个变量的 1000 个 obs。
我想计算以下条件下的观测值:
两个硬币都是正面的几率
sum(df.sim$X1 == 1 & df.sim$X2 == 1)/1000
两枚硬币不同的几率
sum(df.sim$X1 == 2 & df.sim$X2 == 1)/1000
至少一枚硬币正面朝上的几率。
不确定...
我如何计算第 3 个条件的观测值,我是否正确计算了前两个条件的观测值。
我知道我应该得到的条件值如下
25%
50%
75%
试试这个
df <- df.sim[X1] + df.sim[X2]
length(df[df == 3])/1000
对于 #2,您的方法没有考虑第一枚硬币何时为正面,何时为第二枚硬币为反面。但这种方法行得通:
mean(df.sim$X1 != df.sim$X2)
对于#3,您可以执行与#1 相同的操作,但使用 |
(OR) 而不是 &
(AND)。
mean(df.sim$X1 == 1 | df.sim$X2 == 1)
请注意,使用 mean
而不是 sum
可以让您跳过 /1000
部分。
我有一个数据框,它是通过 运行 模拟抛两次硬币 1000 次而编译的。
即每次测试都会抛出两枚硬币。测试重复 1000 次。
头是 1,尾是 2。
这是数据框的预览。
X1 X2
1 X1 2 1
2 X2 1 1
3 X3 1 2
4 X4 1 1
5 X5 1 1
6 X6 1 2
7 X7 1 2
8 X8 1 2
9 X9 1 1
10 X10 2 1
它包含 2 个变量的 1000 个 obs。
我想计算以下条件下的观测值:
两个硬币都是正面的几率
sum(df.sim$X1 == 1 & df.sim$X2 == 1)/1000
两枚硬币不同的几率
sum(df.sim$X1 == 2 & df.sim$X2 == 1)/1000
至少一枚硬币正面朝上的几率。
不确定...
我如何计算第 3 个条件的观测值,我是否正确计算了前两个条件的观测值。
我知道我应该得到的条件值如下
25%
50%
75%
试试这个
df <- df.sim[X1] + df.sim[X2]
length(df[df == 3])/1000
对于 #2,您的方法没有考虑第一枚硬币何时为正面,何时为第二枚硬币为反面。但这种方法行得通:
mean(df.sim$X1 != df.sim$X2)
对于#3,您可以执行与#1 相同的操作,但使用 |
(OR) 而不是 &
(AND)。
mean(df.sim$X1 == 1 | df.sim$X2 == 1)
请注意,使用 mean
而不是 sum
可以让您跳过 /1000
部分。