R 一起洗衣服概率的模拟

R 一起洗衣服概率的模拟,r,simulation,probability,R,Simulation,Probability,我试图模拟一个自创的概率问题“假设有6个家庭居住在公寓楼的一个单元中。平均来说,一个家庭每周洗两次衣服,每次洗两个小时。找出任意两个家庭同时洗衣服的概率。” 但是,我能够模拟单个家庭每周洗一次衣服的情况(下面的R代码),如果能将代码扩展到每周洗两次衣服的情况,我将不胜感激 我还试图找到一个理论解,但它与下面的模拟结果不匹配。感谢您的帮助。谢谢 dist.min <- function(x) { ifelse(min(dist(x)) <= 2 * 3600 - 1, T, F

我试图模拟一个自创的概率问题“假设有6个家庭居住在公寓楼的一个单元中。平均来说,一个家庭每周洗两次衣服,每次洗两个小时。找出任意两个家庭同时洗衣服的概率。”

但是,我能够模拟单个家庭每周洗一次衣服的情况(下面的R代码),如果能将代码扩展到每周洗两次衣服的情况,我将不胜感激

我还试图找到一个理论解,但它与下面的模拟结果不匹配。感谢您的帮助。谢谢

dist.min <- function(x) {
    ifelse(min(dist(x)) <= 2 * 3600 - 1, T, F)
}

set.seed(12345)
N <- 100000
mat <- matrix(sample(1:(24 * 60 * 60 * 7), N * 6, replace = T), ncol = 6)
is.same <- apply(mat, 1, dist.min)
mean(is.same) # 0.30602

dist.minHi如果我正确理解了问题,我会采取这种方法

这是二项分布,其中n=6个家庭,一个家庭洗衣成功的p为4/168,即4小时除以周小时数

然后,至少有两个家庭同时洗衣的理论概率为

sum(dbinom(2:6,6,4/168))
约占0.7%

根据模拟,让我们创建一个矩阵,每个族有6列,每个族有10K行 模拟次数。然后让我们用1(洗衣服)和0(不洗衣服)填充矩阵 概率对应于在任何时间点洗衣服的概率

运行这段代码,我得到大约0.7%的概率,2个或更多的家庭在同一时间洗衣服

mat<-replicate(6,sample(0:1,size = 10000,replace=T,prob = c(164/168,4/168)))
table(rowSums(mat))

mattwice一周意味着每半周一次,您可以将样本更改为
1:(24*60*60*7/2)
感谢您的回复,但使用二项分布可能会使问题过于简单。我认为
sum(dbinom(2:6,6,4/168))
计算了至少两个家庭在相同的4小时内洗衣服的概率,而不是2小时内的任何一个。