R函数获得均值差的置信区间

mb

我正在尝试找到一个函数,该函数可以让我轻松地获得两种方法之间差异的置信区间。

我很确定t.test具有此功能,但是我无法使其工作。以下是到目前为止我尝试过的屏幕截图:

图片

这是我正在使用的数据集

   Indoor Outdoor
1    0.07    0.29
2    0.08    0.68
3    0.09    0.47
4    0.12    0.54
5    0.12    0.97
6    0.12    0.35
7    0.13    0.49
8    0.14    0.84
9    0.15    0.86
10   0.15    0.28
11   0.17    0.32
12   0.17    0.32
13   0.18    1.55
14   0.18    0.66
15   0.18    0.29
16   0.18    0.21
17   0.19    1.02
18   0.20    1.59
19   0.22    0.90
20   0.22    0.52
21   0.23    0.12
22   0.23    0.54
23   0.25    0.88
24   0.26    0.49
25   0.28    1.24
26   0.28    0.48
27   0.29    0.27
28   0.34    0.37
29   0.39    1.26
30   0.40    0.70
31   0.45    0.76
32   0.54    0.99
33   0.62    0.36

我一直在尝试使用t.test已从安装的功能

install.packages("ggpubr")

我对R很陌生,如果对此问题有一个简单的答案,对不起。我已经搜索了很多,却找不到我想要的东西。

注意:我正在寻找的输出在-1.224和0.376之间

编辑:

我要寻找的均值之间的差异的CI是,是否通过在“室内”列中选择一个随机值并在“室外”列中选择一个随机值并将其复制来向图表添加第34个随机数据点。t.test对于给定的样本量33,运行将会输出均值差的正确CI。

假装样本大小为34,我该怎么做?

山姆·梅森

标准库中可能有一些更方便的方法,但是它很容易计算。给定您的df变量,我们可以这样做:

# calculate mean of difference
d_mu <- mean(df$Indoor) - mean(df$Outdoor)
# calculate SD of difference
d_sd <- sqrt(var(df$Indoor) + var(df$Outdoor))

# calculate 95% CI of this
d_mu + d_sd * qt(c(0.025, 0.975), nrow(df)*2)

给我: -1.2246 0.3767

主要用于@AkselA:我经常发现通过抽样更简单的分布来检查我的工作很有帮助,在这种情况下,我会做类似的事情:

a <- mean(df$Indoor) + sd(df$Indoor) * rt(1000000, nrow(df)-1)
b <- mean(df$Outdoor) + sd(df$Outdoor) * rt(1000000, nrow(df)-1)
quantile(a - b, c(0.025, 0.975))

这使我的答案更接近我在评论中给出的配置项

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章