Вы можете попробовать использовать 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