Доверительные интервалы - противоречивые результаты разными методами - PullRequest
0 голосов
/ 03 мая 2020

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

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

## Generating a normal distribution
set.seed(1)
p <- data.frame(x = rnorm(1000))

## Method no. 1 for calculating CI.
p %>%
  summarize(
    lower = 0 - 2 * sd(x),
    upper = 0 + 2 * sd(x)
  )

## Method no. 2 for calc. CI.
p %>%
  summarize(
    lower = quantile(x, p = 0.025),
    upper = quantile(x, p = 0.975)
  )

Первый метод дает 95% CI <-2.069832, 2.069832>, а второй дает <-2.130874, 2.006109>

Любые идеи, почему результаты отличаются. Я ожидал увидеть тот же результат.

Ответы [ 2 ]

2 голосов
/ 03 мая 2020

2 - это практическое правило для построения доверительных интервалов, а не истинное значение, которое ближе к 1,95. Используйте это в первом методе:

## Method no. 1 for calculating CI.
p %>%
    summarize(
        lower = 0 - qnorm(0.975) * sd(x),
        upper = 0 + qnorm(0.975) * sd(x)
    )

Значения будут ближе

0 голосов
/ 03 мая 2020

используйте другое set.seed, вместо 1000 попробуйте взять 1000000

set.seed(2)
p <- data.frame(x = rnorm(1000000))
sd(p$x)
mean(p$x)
## Method no. 1 for calculating CI.
p %>%
  summarize(
    lower = 0 - qnorm(p = 0.975) * sd(x),
    upper = 0 + qnorm(p = 0.975) * sd(x)
  )

## Method no. 2 for calc. CI.
p %>%
  summarize(
    lower = quantile(x, p = 0.025),
    upper = quantile(x, p = 0.975)
  )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...