r - 如何使用向量中的每个值作为平均值在 R 中重复 rnorm?
问题描述
我已经创建了一个使用rnorm
平均值设置为 1000 的代码,现在我想创建一个包含 10000 个元素的向量,每个元素都是我创建的这个正态分布的平均值。我该怎么做?
我试过使用
a = replicate(10000, (mean(rnorm(4, mean=1000, sd=4))))
但是后来我得到了 1004 左右的值,这让我相信这不是我得到的分布的平均值。有什么我想念的吗。
解决方案
正如评论中指出的那样:您在样本中仅使用四个随机数这一事实可能会导致经验平均值远离真实平均值(即 1000)。
随着您增加每次迭代的随机数数量,经验均值将更接近真实均值(当谈到无偏估计时,这正是它的意思)。
参见例如以下
set.seed(123)
replicate(5, (mean(rnorm(4, mean=1000, sd=4))))
[1] 1000.8386 1001.0402 1000.4514 1001.7425 998.7598
replicate(5, (mean(rnorm(1000, mean=1000, sd=4))))
[1] 1000.0734 1000.1480 999.9374 999.9468 999.8768
replicate(5, (mean(rnorm(100000, mean=1000, sd=4))))
[1] 999.9981 999.9939 1000.0004 1000.0001 999.9966
推荐阅读
- python - 在 Python 中删除几乎重复的内容
- github - GitHub Pages 站点的速率限制是多少?
- html - 垂直和水平居中项目
- javascript - 按类填充多个复选框值
- git - 如何在上次提交中添加更改时删除 GitHub 问题引用的足迹
- vue.js - 错误:该项目似乎需要纱线,但它没有安装
- javascript - 制作滚动顶部/底部按钮的最佳方法
- ios - Alamofire 准备好与 Apple Relay 合作了吗?
- node-cron - 如何仅在 node-cron 上启动计划?
- ssms - 使用 SSMS 从 Delta Lake Databricks 进行突触查询