r - 嵌套for循环以在R中生成具有不同概率的随机变量
问题描述
我正在尝试编写一个 for 循环,该循环使用不同的概率值从几何分布中生成随机变量。但是,我编写的代码仅使用序列中的最后一个概率来生成随机变量,见下文。
x <- list()
y <- list()
probs <- seq(0.1, 0.9, 0.1)
for (i in 1:length(probs)) {
for (j in 1:10000) {
x[j] <- rgeom(n=1, prob=probs[i])+1
y[j] <- probs[i]
}
}
我如何循环概率为每个概率生成 10000 RV?
解决方案
一个简单的解决方案可能是:
x <- list()
y <- list()
probs <- seq(0.1, 0.9, 0.01)
j<-1
for (i in 1:length(probs)) {
x[[j]] <- rgeom(n=10000, prob=probs[i])+1
y[[j]] <- rep(probs[i], 10000)
j<-j+1
}
x<- list(unlist(x))
y<- list(unlist(y))
推荐阅读
- swagger - swagger 是否仍可用于生成 Swagger 2 文档而不是 OAS3?
- angular - 将管道输出另存为变量
- javascript - 使用授权标头获取请求在 React 中不起作用
- python - 如何修复 AttributeError:在 pandas 中加载 excel 文件时“int”对象没有属性“strip”
- mysql - 带别名的 NodeJS 复杂 Mysql 查询?
- java - 将页脚和页眉添加到将用于创建 excel 文件 (xls) 的 xsl 文件
- python - Matplotlib 在多个子图上绘制文本 - 如何选择哪个子图?
- distributed-system - 服务器如何发现 gossip 成员协议中的现有成员?
- powershell - 在powershell中使用“foreach”循环将内容写入文件
- azure - AAD 安全组问题 技术问题