Функция R для получения доверительного интервала разницы между средними - PullRequest
1 голос
/ 07 ноября 2019

Я пытаюсь найти функцию, которая позволяет мне двум легко получить доверительный интервал разницы между двумя средними значениями.

Я почти уверен, что 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

Редактировать:

КИ разницы между средствами, которые я ищу, заключается в том, был ли случайный 34-й пункт данных добавлен на диаграмму путем выбора случайного значения в столбце Indoor и случайного значения в столбце Outdoor и дублирования его. Запуск t.test выдаст правильный CI для разницы средних для данного размера выборки 33.

Как я могу сделать это, делая вид, что размер выборки 34?

1 Ответ

1 голос
/ 07 ноября 2019

, возможно, в стандартной библиотеке есть что-то более удобное, но его довольно легко вычислить. учитывая вашу 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))

, что дает мне ответы гораздо ближе к КИ, который я дал в комментарии

...