Создайте функцию для стандартной ошибки процента совокупности в R - PullRequest
0 голосов
/ 25 мая 2020

Я надеюсь создать формулу в R, которую я смогу использовать для вычисления стандартной ошибки оценки процентов населения для различных демографических c факторов. В моей выборке 1045 человек. Мой фрейм данных называется NHIS1, и, например, я хотел бы вычислить стандартную ошибку для доли белого или испаноязычного населения c. У меня есть переменные для WHITE и HISP бинарные с индикаторами 0 или 1. Я рассчитал процентное соотношение населения с помощью этого кода:

#sum(NHIS1$WHITE)=637,nrow(NHIS1)=1045, and sum(NHIS1$HISP)=408 (sum(NHIS1$WHITE)/nrow(NHIS1))*100, (sum(NHIS1$HISP)/nrow(NHIS1))*100

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

perc_SE=function(p){sqrt((p*(1–p))/1045)}

Спасибо!

1 Ответ

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

Вы можете попробовать использовать prop.test таблицы для каждого столбца, что дает вам пропорцию, а также 95% доверительный интервал. Просто умножьте их на 100, чтобы получить проценты:

prop.test(table(NIHS$WHITE))
#> 
#>  1-sample proportions test with continuity correction
#> 
#> data:  table(NIHS$WHITE), null probability 0.5
#> X-squared = 3.6431, df = 1, p-value = 0.0563
#> alternative hypothesis: true p is not equal to 0.5
#> 95 percent confidence interval:
#>  0.4993011 0.5533346
#> sample estimates:
#>         p 
#> 0.5263941 

Если вам нужна простая функция для получения процентов, вы можете сделать это:

proportions <- function(x)
{
 a <- prop.test(table(x))
 data.frame(Proportion = 100 * a$estimate, 
            Lower_CI = 100 * a$conf.int[1], 
            Upper_CI = 100 * a$conf.int[2])
}

Итак, теперь вы можете просто сделать :

proportions(NIHS$WHITE)
#>   Proportion Lower_CI Upper_CI
#> p   52.63941 49.93011 55.33346
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...