pairwise.prop.test в R с несколькими категориями - PullRequest
0 голосов
/ 03 ноября 2018

У меня есть следующий набор данных, который состоит из числа сотрудников с разбивкой по расе для 19 фирм.

data <- matrix(c(6073,1033,1711,3920,3431,2178,357,757,301,332,4204,
              364,1006,337,553,7352,690,1356,1910,2066,4695,776,
              1267,575,454,3761,352,529,130,658,5523,468,652,146,
              312,5027,657,356,107,804,4650,311,674,78,599,4581,
              192,581,114,335,1176,65,121,67,195,3841,274,289,71,
              425,6489,1912,1784,1041,1434,1487,148,121,62,72,
              4130,170,365,353,479,5181,2260,1023,219,502,1286,
              1288,890,423,285,2536,289,359,61,424,6237,1504,
              1117,179,911),ncol=5,byrow=TRUE)
colnames(data) <- c("White","Black","Hispanic","Asian","Unknown")
rownames(data) <- c("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S")
data <- as.table(data)

Я пытаюсь использовать тест pairwise.prop.table в R для проверки различий в этнической принадлежности фирм, чтобы увидеть, какие из них существенно различаются.

Когда я бегу: pairwise.prop.test (данные [с ( "Белый", "Черный", "Испанец", "азиатский", "Неизвестный")])

Я получаю «Ошибка в pairwise.prop.test (smoke [, c (« WHITE_COUNT »,« BLACK_COUNT »,« HISP_COUNT »,« x »должен иметь 2 столбца»

Есть ли другая функция, которую я могу использовать? Я хотел бы сравнить все 5 гонок на пары фирм.

Буду признателен за любую помощь. Спасибо!

Ответы [ 2 ]

0 голосов
/ 04 ноября 2018

Я надеюсь, что это может быть выстрел в темноте. Таким образом, вы сможете сравнить для каждой расы попарное сравнение между фирмами. На самом деле вам нужно выполнить несколько сравнений между полиномиальными распределениями. шаги: - данные преобразуются из широкого в длинный формат; - Пуассон GLM оснащен частотами как результаты, фирмами и расами как ковариатами; - пакет emmeans используется для парных сравнений Окончательный результат - это разница в лог-коэффициентах между фирмами для каждой расы.

data <- matrix(c(6073,1033,1711,3920,3431,2178,357,757,301,332,4204,
                 364,1006,337,553,7352,690,1356,1910,2066,4695,776,
                 1267,575,454,3761,352,529,130,658,5523,468,652,146,
                 312,5027,657,356,107,804,4650,311,674,78,599,4581,
                 192,581,114,335,1176,65,121,67,195,3841,274,289,71,
                 425,6489,1912,1784,1041,1434,1487,148,121,62,72,
                 4130,170,365,353,479,5181,2260,1023,219,502,1286,
                 1288,890,423,285,2536,289,359,61,424,6237,1504,
                 1117,179,911),ncol=5,byrow=TRUE)
colnames(data) <- c("White","Black","Hispanic","Asian","Unknown")
rownames(data) <- c("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S")
data
typeof(data)
data <- as.data.frame(data)

library(tidyverse)
data2 <- data %>%
  rownames_to_column(var="Firm") %>%
  gather(key = Race, value = "n", White:Unknown, factor_key=F)
data2
fit <- glm(n ~ Firm+Race, data = data2, family = poisson)
fit
library(emmeans)
pairs(emmeans(fit, ~ Firm|Race))
0 голосов
/ 03 ноября 2018

Как говорит парная документация, ваши данные должны быть

Вектор отсчетов успехов или матрица с 2 столбцами, дающими количество успехов и неудач соответственно

Если уменьшить количество столбцов до двух, как указано в ошибке, вы получите результат.

pairwise.prop.test(data[,c("White","Black")])

Результатом будет:

    Pairwise comparisons using Pairwise comparison of proportions 

data:  data[, c("White", "Black")] 

  A       B       C       D       E       F       G       H       I       J       K       L       M       N      
B 1.00000 -       -       -       -       -       -       -       -       -       -       -       -       -      
C < 2e-16 3.2e-14 -       -       -       -       -       -       -       -       -       -       -       -      
D < 2e-16 6.1e-14 1.00000 -       -       -       -       -       -       -       -       -       -       -      
E 1.00000 1.00000 < 2e-16 < 2e-16 -       -       -       -       -       -       -       -       -       -      
F < 2e-16 1.2e-10 1.00000 1.00000 2.8e-15 -       -       -       -       -       -       -       -       -      
G < 2e-16 < 2e-16 1.00000 1.00000 < 2e-16 1.00000 -       -       -       -       -       -       -       -      
H 4.2e-05 0.04460 1.2e-07 5.2e-07 0.00159 7.6e-05 5.6e-10 -       -       -       -       -       -       -      
I < 2e-16 < 2e-16 0.04410 8.2e-05 < 2e-16 0.00152 0.05631 < 2e-16 -       -       -       -       -       -      
J < 2e-16 < 2e-16 8.0e-14 < 2e-16 < 2e-16 < 2e-16 4.1e-14 < 2e-16 3.4e-05 -       -       -       -       -      
K < 2e-16 6.1e-14 0.04410 0.00308 1.0e-15 0.00616 0.05631 3.6e-09 1.00000 1.00000 -       -       -       -      
L < 2e-16 < 2e-16 0.50026 0.00834 < 2e-16 0.04410 0.70329 3.3e-14 1.00000 2.0e-06 1.00000 -       -       -      
M < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 -       -      
N 3.7e-07 6.8e-05 1.00000 1.00000 4.2e-06 1.00000 1.00000 0.12875 0.00597 5.4e-13 0.00571 0.05631 < 2e-16 -      
O < 2e-16 < 2e-16 2.0e-13 < 2e-16 < 2e-16 2.5e-16 1.2e-13 < 2e-16 3.4e-05 1.00000 1.00000 2.1e-06 < 2e-16 7.2e-13
P < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16
Q < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16
R 8.3e-07 0.00079 0.03436 0.23508 2.0e-05 0.48752 0.00659 1.00000 2.4e-08 < 2e-16 1.4e-05 5.8e-06 < 2e-16 1.00000
S 2.1e-13 9.6e-08 < 2e-16 < 2e-16 3.2e-13 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 < 2e-16 1.3e-05 < 2e-16
  O       P       Q       R      
B -       -       -       -      
C -       -       -       -      
D -       -       -       -      
E -       -       -       -      
F -       -       -       -      
G -       -       -       -      
H -       -       -       -      
I -       -       -       -      
J -       -       -       -      
K -       -       -       -      
L -       -       -       -      
M -       -       -       -      
N -       -       -       -      
O -       -       -       -      
P < 2e-16 -       -       -      
Q < 2e-16 < 2e-16 -       -      
R < 2e-16 < 2e-16 < 2e-16 -      
S < 2e-16 < 2e-16 < 2e-16 < 2e-16

P value adjustment method: holm 
...