r - R中的t分布
问题描述
我想t-value
用 17 次观察找到 90% 的置信区间。
在 Excel 中,我可以进行此计算,t=T.INV.2T(.10, 16)=1.75
但是在 RI 中找不到获得相同结果的正确方法。
qt(p = 1-.9, df = 17-1) = -1.34
qt(p = (1-.9)/2, df = 17-1) = -1.75 # trying with two-tailed?
T.INV.2T
什么是函数 R在 Excel 中进行相同的计算。
同样,我们T.DIST.2T
在 Excel 中也有,在 R 中有什么相同的功能?
解决方案
您需要具有自由度1 - .1 / 2 = 0.95
的 t 分布的分位数:17 - 1 = 16
qt(0.95, 16)
# [1] 1.745884
解释
Excel 描述T.INV.2T
为
返回学生 t 分布的双尾逆
这是数学谈话中的分位数(尽管我永远不会使用术语2 tailed quantile)。p%
分位数q
定义为满足 的点P(X <= q) >= p%
。
R
我们通过函数(qt
q表示分位数,t 表示 t 分布)得到它。现在我们只需要弄清楚 a 是什么意思two-tailed inverse
。事实证明,我们正在寻找满足的q
点P(X <= -|q| | X >= |q|) >= .1
。由于 t 分布是对称的,这简化为P(X >= |q|) >= .1 / 2
。
R
您可以使用概率函数轻松验证pt
:
pt(qt(0.05, 16), 16, lower.tail = TRUE) +
pt(qt(0.95, 16), 16, lower.tail = FALSE)
# [1] 0.1
推荐阅读
- javascript - 如何使用javascript根据日期键对对象数组进行排序?
- c# - 我可以简单地进行冗长的速记字符串比较吗?
- php - 使用 PHP 仅删除特定字符之前的第一个单词
- python - 优化代码并避免python中的if语句
- google-cloud-platform - 在 Spanner 中拥有大量分片是否会产生成本?
- kubernetes - Prometheus 服务端点抓取服务的所有端口,而不仅仅是带注释的端口
- javascript - dataTable 不正确显示 ajax 数据
- azure - 使用 Java 自动转发 Azure 服务总线消息
- java - 如何使用 JPA 和 Hibernate 复制 INSERT/UPDATE/DELETE 语句
- python - Scapy/Kamene-如何提取数据包和帧信息?