r - 如何从R中的左卡方分布生成随机数?
问题描述
我想从具有 3 个自由度但向左移动的卡方分布生成随机数。我的意思是移位分布函数 f(xa) a 是移位量。
在 r 中,据说非中心性参数必须是非负的。
解决方案
让我们看一下具有 3 个自由度的卡方分布:
x_vals <- seq(0, 10, 0.1)
plot(x_vals, dchisq(x_vals, 3), type = "l",
main = "Chi Squared distribution of x with 3 DOF")
现在让我们将它向左移动一个常量a
。我们将在 x = 0 处绘制一条垂直线以强调这种转变:
a <- 2
plot(x_vals - a, dchisq(x_vals, 3), type = "l",
main = "Chi Squared distribution of x - 2 with 3 DOF")
abline(v = 0, lty = 2)
这是您希望从中采样的分布。在这种情况下,我们只需要从卡方分布中采样并a
从绘制的每个元素中减去。在 R 中,这就像在rchisq(n, 3) - a
哪里做n
所需的样本大小一样简单。
为了演示,这里是从这个分布中抽取的 10,000 个样本的直方图:
hist(rchisq(10000, 3) - a, breaks = 100, xlim = c(-2, 8),
main = "10,000 samples from Chi Square distribution of (x - 2) with 3 DOF")
推荐阅读
- python - 有没有办法用 python 读取传入的 Windows 通知?
- javascript - 在 .map 中使用扩展运算符不改变状态,而是从函数返回更新的状态
- ruby-on-rails - Ansible 在 Rails 部署期间创建循环符号链接
- python - 如何在程序中获得最终总计?
- javascript - 在表格行中的更改复选框上运行时如何停止重叠点击?
- uwp - 以编程方式在 TreeView 中选择节点
- grammar - 从此语法中删除间接左递归
- python - 无法更改用户头像
- angular - 路由“auth”的配置无效。必须提供以下之一:component、redirectTo、children 或 loadChildren
- javascript - 在 D3 v6 中无法在鼠标悬停时获取节点基准