r - 在 beta 分布上查找给定 x 值的 y 值
问题描述
我试图找到 beta 曲线上点的 y 值。
这是我的测试版;假设我想找到 x 值为 0.6 的点,例如:
x=seq(0,1,length=100)
y=dbeta(x,7,2)
plot(x,y, type="l", col="blue")
abline(v=0.6)
我尝试添加相应的点,但由于某种原因它不起作用:
points(0.6, beta(7, 2), cex=3, pch=20, col="black")
一旦解决了这个问题,我怎样才能找到 y 值?我在网上看;我发现了一些使用 approxfun 的示例,但我不知道如何将其应用于此问题。
解决方案
您需要使用dbeta()
而不是beta()
(假设这不是错字),并指定所有三个x
,shape1
和shape2
. 我想你想要
points(0.6, dbeta(0.6, shape1=7, shape2=2),
cex=3, pch=20, col="black")
如果要将实际的 y 值存储在变量中,请使用
bval <- dbeta(0.6, shape1=7, shape2=2)
推荐阅读
- python - 如何在for循环中将字符串与python中的列表连接起来
- javascript - 如何配置网站 (Php) 以运行 Cordova Camera 插件代码
- c# - 异常弹出窗口似乎放大了
- javascript - 输入验证后弹出并提交Javascript
- java - 为什么有时我需要在 `package` 之前运行 `build`?
- tinymce - 在 TinyMCE 中隐藏源输入字段或更改显示的 url
- apache-spark - 从不同的数据集中删除值
- mysql - 对 MySQL 表进行分区是否必须使用唯一索引?
- c# - 我需要将参数从父级传递给子级
- r - data.table 和 str_extract_all 的组合