Dado que sus conclusiones pueden depender de cómo modele la relación entre las personas y las tiendas, seamos explícitos al respecto.
Un enfoque razonable que parece acorde con el espíritu de la pregunta es suponer que los almacenes surgen aleatoriamente en función de la población: cada nueva persona crea una oportunidad $\lambda$ de la aparición de una nueva tienda. De forma más explícita (y un poco más general), supongamos que la distribución del número de tiendas en una zona con $n$ personas es efectivamente Poisson con un parámetro igual a $\lambda n$ .
Bajo la hipótesis nula de que no hay diferencia entre las dos áreas, estimaríamos $\lambda$ como el número medio de tiendas por persona:
$$\hat{\lambda} = \frac{43 + 27}{28137 + 35167}.$$
¿Hasta qué punto son coherentes los datos con esta hipótesis? Una forma de saberlo, sin más análisis, sería simular datos para el número de tiendas dadas estas dos poblaciones. En una simulación de este tipo, el número de tiendas en la primera zona tendría una distribución de Poisson $(28137\hat{\lambda})$ y los números de la segunda área tendrían una distribución de Poisson $(35167\hat{\lambda})$ distribución. Por tanto, los resultados de la simulación se parecerían a los histogramas de la figura siguiente. Esa figura marca las observaciones reales con líneas rojas verticales: el número de tiendas parece ser alto para la zona de alta privación y bajo para la zona de baja privación.
Podemos formalizar y cuantificar este aspecto construyendo una estadística que mida adecuadamente las diferencias en tiendas per cápita. Una buena opción sería un estadístico tipo T de Student que dividiera la diferencia de tiendas per cápita (comparada con la diferencia esperada) por su desviación típica. Denotemos las dos zonas por índices $1$ et $2$ sus poblaciones por $n_1$ et $n_2,$ las tasas subyacentes (verdaderas pero desconocidas) $\lambda_1$ et $\lambda_2,$ y el número total de tiendas en las dos zonas por $X_1$ et $X_2.$ Suponiendo que estas cifras sean estadísticamente independientes (que es una hipótesis de partida útil), se deduce que
$$\mathbb{E}(X_2 - X_1) = \lambda_2 n_2 - \lambda_1 n_1$$
y
$$\text{Var}(X_2 - X_1) = \text{Var}(X_1) + \text{Var}(X_2) = n_1 \lambda_1 + n_2 \lambda_2.$$
Bajo la hipótesis nula de que $\lambda_1 = \lambda_2,$ la media $\mathbb{E}(X_2-X_1)$ se estima como
$$\hat{\lambda} (n_2 - n_1) \approx 7.7736$$
y la varianza se estimará de forma igual de sencilla mediante
$$\widehat{\text{Var}}(X_2 - X_1) = X_1 + X_2 = 70$$
por lo que el estadístico T es
$$T = \frac{27-43 - 7.7736}{\sqrt{70}} \approx -2.8415.$$
Una aproximación normal a su distribución es exacta porque ambos recuentos de tiendas son bastante grandes. Dado que la hipótesis alternativa es sólo que las dos tasas podrían diferir, esta prueba bilateral da un valor p de $2\Phi(-|-2.8415|) \approx 0.00449,$ que es pequeño: la diferencia parece significativa . La simulación proporciona una comprobación: en $10,000$ iteraciones, sólo encontré $40$ de ellos, o $0.004$ del total, presentaban una estadística T mayor en valor absoluto que la realmente observada. (Los valores de $\pm 2.8415$ se muestran en el histograma de estas estadísticas). Esto concuerda estrechamente con la aproximación Normal.
En resumen, estos datos no son coherentes con el modelo y las hipótesis adicionales formuladas en el análisis anterior. Por lo tanto, al menos una de las siguientes afirmaciones no es cierta:
En cualquier caso, sería justo afirmar que existe una "diferencia significativa" en el número de tiendas per cápita en estas dos regiones.
R
A continuación se muestra el código para realizar los cálculos y las cifras.
#
# Data
#
people <- c(High=28137, Low=35167)
stores <- c(High=43, Low=27)
#
# Estimates and tests.
#
lambda <- sum(stores)/sum(people)
n <- 10^4
sim <- matrix(rpois(n*length(stores), lambda*people), ncol=length(stores), byrow=TRUE)
colnames(sim) <- c("High", "Low")
t.stat <- function(stores, people) {
m = diff(sum(stores)/sum(people) * people)
(diff(stores) - m) / sqrt(sum(stores))
}
t.sim <- apply(sim, 1, t.stat, people=people)
sum(abs(t.sim) > abs(t.stat(stores, people))) / n # The simulation p-value
2 * pnorm(-abs(t.stat(stores, people))) # The normal approximation
#
# Figures
#
par(mfrow=c(1,3))
plot.sim <- function(s) {
hist(sim[, s], freq=FALSE, main=paste(s, "deprivation simulation"), xlab="Stores")
#abline(v=(lambda * people)[s], col="Blue")
abline(v=stores[s], col="Red", lwd=2)
}
plot.sim("High"); plot.sim("Low")
hist(t.sim, main="T statistic in simulation", xlab="T", freq=FALSE)
abline(v = t.stat(stores, people)*c(-1,1), col="Red", lwd=2)