El Coeficiente <i>D<sub>YX</sub></i> de Somers:<br>
Asimetría y Capacidad Discriminatoria
Método No Paramétrico
Jairo Alvarez — Jose Luis Quintero
Universidad Nacional de Colombia – Sede La Paz<br>
Programa de Estadística 2025-II

Asociación asimétrica para variables ordenadas: dYX de Somers

Función y racionalización

El estadístico gamma que estudiamos en la sección anterior es un índice apropiado para medir la asociación entre variables ordenadas. Como con el coeficiente de Cramér, que mide la asociación entre dos variables que son categóricas, el estadístico gamma no es sensible a la relación diferencial entre dos variables. Cuando las variables son categóricas en escalas nominales, el estadístico lambda es un índice adecuado de asociación asimétrica entre una variable y otra.

Cuando las variables están ordenadas, existe algunas veces la necesidad de medir el grado de asociación entre una variable particular y otra. Un ejemplo sería cuando una de las variables está diseñada como una variable independiente y la otra como una variable dependiente. Otro caso sería cuando estudiamos secuencias de conductas: ¿están las conductas antecedentes relacionadas con las conductas consecuentes?

La d de Somers es un índice asimétrico apropiado de relación entre dos variables ordenadas. Siguiendo el notamiento de la sección previa, supongamos que la variable X es una variable en una escala ordinal para la cual:

\[ X_1 < X_2 < X_3 < \dots < X_k \]

y que puede considerarse como una variable independiente. Más aún, supongamos que la variable B es una variable en una escala ordinal para la cual:

\[ Y_1 < Y_2 < Y_3 < \dots < Y_r \]

y que puede considerarse como una variable dependiente. Esto es, suponemos que A y B están ordenadas en magnitud por sus subíndices.

Entonces, \(\Delta_{YX}\) es un índice asimétrico de asociación entre las variables. Si los papeles de las dos variables se invierten, entonces el índice se denota \(\Delta_{XY}\). En una muestra, los estadísticos correspondientes serían \(d_{YX}\) y \(d_{AB}\), respectivamente.

El parámetro \(\Delta_{YX}\) es la diferencia entre la probabilidad de que dentro de un par de observaciones, X y Y estén en el mismo orden y la probabilidad de que dentro de un par de observaciones X y Y no concuerden en su orden, condicionado a no empates en la variable X. Una expresión para este parámetro es:

\[ \Delta_{YX} = \frac{P[\text{X y Y concuerdan en el orden}] - P[\text{X y Y no concuerdan en el orden}]}{P[\text{un par de observaciones no estén ligadas en A}]} \]

En forma similar:

\[ \Delta_{XY} = \frac{P[\text{X y Y concuerdan en el orden}] - P[\text{X y Y no concuerdan en el orden}]}{P[\text{un par de observaciones no ligadas en Y}]} \]

Ya que raramente conocemos las probabilidades en la población, debemos estimarlas a partir de los datos; así, debemos usar el estadístico \(d_{YX}\) y \(d_{XY}\) para estimar \(\Delta_{YX}\) y \(\Delta_{XY}\), respectivamente.

Método

Para calcular la d de Somers de dos conjuntos de variables ordinales, digamos
\(X_1, X_2, \dots, X_k\) y \(Y_1, Y_2, \dots, Y_r\), arreglamos las frecuencias en una tabla de contingencia:

\(X_1\) \(X_2\) \(\dots\) \(X_k\) Total
\(Y_1\) \(n_{11}\) \(n_{12}\) \(\dots\) \(n_{1k}\) \(R_1\)
\(Y_2\) \(n_{21}\) \(n_{22}\) \(\dots\) \(n_{2k}\) \(R_2\)
\(\vdots\) \(\vdots\) \(\vdots\) \(\ddots\) \(\vdots\) \(\vdots\)
\(Y_r\) \(n_{r1}\) \(n_{r2}\) \(\dots\) \(n_{rk}\) \(R_r\)
Total \(C_1\) \(C_2\) \(\dots\) \(C_k\) \(N\)

Los datos pueden consistir en cualquier número de categorías. Es posible calcular el estadístico d de Somers para tablas:

Cálculo de los acuerdos y desacuerdos

Como en el estadístico gamma, empezamos calculando los números de acuerdos y desacuerdos entre los pares de variables.

La diferencia para Somers es que el denominador cambia, ya que debemos omitir las ligas (empates) en la variable X para calcular \(d_{YX}\).

La ecuación es:

\[ d_{YX} = \frac{\#\text{acuerdos} - \#\text{desacuerdos}} {\#\text{pares no ligados en la variable X}} \]

Usando la notación del texto:

\[ d_{YX} = \frac{2 [ \#(+) - \#(-) ]} {N^2 - \sum_{j=1}^{k} C_j^2} \tag{8.41} \]

donde:

  • \(\#(+)\) = número de acuerdos
  • \(\#(-)\) = número de desacuerdos
  • \(C_j\) = frecuencia marginal del valor \(X_j\)
  • \(N\) = número total de observaciones

¿Por qué aparece el término \(N^2 - \sum C_j^2\) en el denominador?

Aunque inicialmente puede no parecerlo, esta expresión sí elimina todos los empates en la variable X.

  • Si contáramos todos los emparejamientos posibles, habría \(\tfrac{1}{2}N^2\) emparejamientos.
  • Pero si existen empates dentro de una categoría \(X_j\), entonces existen:

\[ \frac{1}{2} C_j^2 \]

pares empatados que deben excluirse.

El número total de pares no empatados en X es entonces:

\[ N^2 - \sum_{j=1}^{k} C_j^2 \]

Fórmula para el índice asimétrico invertido \(d_{XY}\)

Si deseamos calcular la asociación cuando X es dependiente y Y es predictora, usamos:

\[ d_{AB} = \frac{\#\text{acuerdos} - \#\text{desacuerdos}} {\#\text{pares no ligados en la variable Y}} \]

Usando la notación equivalente:

\[ d_{XY} = \frac{2 [ \#(+) - \#(-) ]} {N^2 - \sum_{i=1}^{r} R_i^2} \tag{8.42} \]

donde:

  • \(R_i\) son las sumas marginales de la variable Y.

Interpretación

  • \(d_{YX}\) mide cuánto X predice a Y
  • \(d_{XY}\) mide cuánto Y predice a X
  • Las dos versiones no son iguales debido a la exclusión de empates en variables distintas.

Esto refleja la naturaleza asimétrica del coeficiente de Somers.

Para ilustrar el cálculo de \(d_{YX}\), calcularemos el estadístico para los datos de la tabla 8.16 correspondiente.
El uso del estadístico \(d_{YX}\) de Somers será apropiado si suponemos que la variable X es la variable independiente y que la variable Y es la variable dependiente, y que deseamos evaluar la asociación de X → Y.

Tabla de datos

La tabla 8.16 contiene los valores observados:

tabla <- matrix(c(
  10, 5,  2, 3,
   8, 9,  7, 1,
   2, 6,  8, 9
), nrow = 3, byrow = TRUE)

colnames(tabla) <- c("A1", "A2", "A3", "A4")
rownames(tabla) <- c("B1", "B2", "B3")

tabla
##    A1 A2 A3 A4
## B1 10  5  2  3
## B2  8  9  7  1
## B3  2  6  8  9

La definición según el libro es:

\[ \#(+) \;=\; \sum_{i,j} n_{ij} \, N^{+}_{ij} \]

\[ \#(-) \;=\; \sum_{i,j} n_{ij} \, N^{-}_{ij} \]

donde cada \(N^{+/-}_{ij}\) es el número de observaciones discordantes con \(n_{ij}\).

# Función para calcular parejas concordantes y discordantes

calcular_parejas <- function(tabla){
filas <- nrow(tabla)
cols  <- ncol(tabla)

plus <- 0   # #(+) concordantes
minus <- 0  # #(-) discordantes

for(i in 1:filas){
for(j in 1:cols){
for(ii in 1:filas){
for(jj in 1:cols){

      # Solo comparar posiciones posteriores (evita duplicación)
      if(i < ii){
        
        # Concordantes
        if(j < jj){
          plus <- plus + tabla[i,j] * tabla[ii,jj]
        }
        
        # Discordantes
        if(j > jj){
          minus <- minus + tabla[i,j] * tabla[ii,jj]
        }
        
      }
    }
  }
}


}

list(plus = plus, minus = minus)
}

resultados <- calcular_parejas(tabla)

resultados
## $plus
## [1] 945
## 
## $minus
## [1] 310

En la sección correspondiente al estadístico gamma encontramos que:

\[ \#(+) = 945,\qquad \#(-) = 310 \]

Usando estos valores y los totales marginales de la columna de la tabla, encontramos:

\[ d_{YX} = \frac{2[\#(+) - \#(-)]}{N^2 - \sum_{j=1}^{k} C_j^2} \tag{8.41} \]

Sustituyendo:

\[ d_{YX} = \frac{2(945 - 310)}{70^2 - (20^2 + 20^2 + 17^2 + 13^2)} = \frac{2(635)}{3642} \approx 0.35 \]

Este valor de \(d_{YX}\) indica que existe una moderada relación o asociación asimétrica desde la variable X hacia la variable Y.
(Nótese que no hemos calculado \(d_{XY}\).)

# Totales por columnas
Cj <- colSums(tabla)

# Total N
N <- sum(tabla)

# Numerador: 2[(+) - (-)]
num <- 2 * (resultados$plus - resultados$minus)

# Denominador: N^2 - Σ Cj^2
den <- N^2 - sum(Cj^2)

# Somers d_BA
d_YX <- num / den
d_YX
## [1] 0.3487095
library(DescTools)
## Warning: package 'DescTools' was built under R version 4.5.2
SomersDelta(tabla)
## [1] 0.3487095

Interpretación del estadístico de Somers \(d\_{YX}\)

El valor obtenido para el estadístico asimétrico de Somers es:

d_{YX} = 0.35

Este resultado permite concluir lo siguiente:

En resumen, el valor d_{YX} = 0.35 indica que existe una relación positiva y moderada entre las variables, donde el orden en X proporciona información útil para predecir el orden en Y.

Ejemplo

Con el desarrollo de un código de barras exploratorio para usar en supermercados y muchas otras tiendas, ha habido una tendencia hacia la omisión de marcar los precios en los reactivos individuales. Los comerciantes están bastante entusiasmados e interesados en no marcar los precios individuales. Dos de las más importantes razones son las siguientes: 1. el ahorro de trabajo resultante de no tener que marcar cada artículo, y 2. la habilidad de reimprimir los artículos rápidamente en respuesta a los cambios en el costo, ventas especiales, etc.

Por otra parte, los compradores se han vuelto a acostumbrar a tener los precios marcados sobre los artículos individuales. Las ventajas de los precios unitarios que los compradores citan incluyen la habilidad de: 1. comparar fácilmente los precios en diferentes marcas de un producto particular, 2. revisar el costo total de artículos en una canasta marcada, y 3. asegurar los cargos correctos al pagar.

Si los comerciantes quieren cambiar hacia la omisión de marcar los precios, los especialistas de mercado argumentan que deben mantenerse las campañas de relaciones públicas para educar al público acerca de las ventajas de tales omisiones. Para tener una campaña efectiva, es importante conocer las actitudes actuales y qué tipo de compradores tienen las mayores resistencias a la omisión de precios.

En un estudio de compradores en una gran ciudad del Oeste Medio en Estados Unidos se obtuvieron las actitudes hacia la omisión de precios individuales y se relacionaron con un número de variables demográficas tales como edad, sueldo, educación, etcétera.

En una investigación, las variables demográficas pueden considerarse variables independientes y la respuesta a una pregunta de actitud es la variable dependiente. Una de las variables demográficas fue la educación, y los investigadores querían determinar cómo esta afectaba la actitud. Ya que las variables educación y actitud son ambas variables ordinales y debido a que estamos interesados principalmente en el efecto de la educación sobre la actitud, el d_{EA} de Somers es una medida apropiada.

En la tabla 8.19 se resumen las respuestas de N = 165 mujeres compradoras. Para determinar la asociación, se calculará el d_{EA} de Somers.

Tabla 8.19. Actitud hacia la omisión de precios en los artículos para diferentes niveles educativos.

Actitud Menor de secundaria Secundaria Comercio Bachillerato Total
Muy mala a mala 22 39 19 8 88
Indiferente 6 8 6 14 34
Buena a muy buena 5 16 12 10 43
Total 33 63 37 32 165

Para evaluar la asociación asimétrica entre educación (independiente) y actitud (dependiente), se calcularán las parejas concordantes y discordantes, y posteriormente se obtendrá el estadístico d_{YX} de Somers.

Función para calcular concordantes y discordantes

## ---- concord-discord ----
calcular_parejas <- function(tabla2){
  filas <- nrow(tabla2)
  cols  <- ncol(tabla2)
  
  plus  <- 0   # Concordantes
  minus <- 0   # Discordantes
  
  for(i in 1:filas){
    for(j in 1:cols){
      for(ii in 1:filas){
        for(jj in 1:cols){
          
          # Solo comparar hacia adelante
          if(i < ii){
            # concordantes si ambas aumentan
            if(j < jj){
              plus <- plus + tabla2[i,j] * tabla2[ii,jj]
            }
            # discordantes si una sube y la otra baja
            if(j > jj){
              minus <- minus + tabla2[i,j] * tabla2[ii,jj]
            }
          }
        }
      }
    }
  }
  
  list(plus = plus, minus = minus)
}

resultados <- calcular_parejas(tabla2)
resultados
## $plus
## [1] 4010
## 
## $minus
## [1] 2146

Cálculo de Somers d_{XY}

## ---- somers ----
plus  <- resultados$plus
minus <- resultados$minus

N <- sum(tabla2)
Cj_sq <- colSums(tabla2)^2

somers_d <- (2*(plus - minus)) / (N^2 - sum(Cj_sq))

somers_d
## [1] 0.1885304
library(DescTools)

SomersDelta(tabla2)
## [1] 0.1885304

Con base en este análisis concluimos que la educación tiene una pequeña relación con la omisión de los precios en los artículos. La tabla muestra una tendencia de que las mujeres con mayor educación tienen actitudes más positivas hacia la omisión de los precios en los artículos y que las mujeres con menor educación tienen actitudes más negativas. Posteriormente se examinará si esta tendencia es significativa.

Interpretación del \(d_{XY}\) de Somers

Ya que \(d_{XY}\) “ignora” los empates entre las variables de la columna, es un índice de la asociación entre dos pares de observaciones que están en dos diferentes columnas (esto es, no existen empates en la variable X). Considérense dos observaciones seleccionadas aleatoriamente \((X \rightarrow Y)\) y \((X' \rightarrow Y')\), en las que X y X’ son diferentes.

El \(d_{XY}\) de Somers es la diferencia entre la probabilidad de que X y X’ estén en el mismo orden en que están Y y Y’ (siendo Y = Y’ considerado como un acuerdo en el orden), menos la probabilidad de que X y X’ estén en un orden diferente que Y y Y’, todo ello condicionado a que X ≠ X’.

El índice \(d_{XY} = 1\) si y sólo si \(\#(+) = 0\) (no existen desacuerdos en el orden) y cada fila tiene al menos una celda diferente de cero. La apariencia de la tabla de contingencia tendrá las celdas diferentes de cero descendiendo desde el extremo superior izquierdo hasta el extremo inferior derecho, como una escalera. De modo similar, \(d_{XY} = -1\) si las celdas diferentes de cero ascienden desde el extremo inferior izquierdo hasta el extremo superior derecho.

El índice \(d_{XY} = 0\) si las variables (en la muestra) son independientes; sin embargo, \(d_{XY} = 0\) no implica independencia, a menos que la tabla de contingencia sea de 2 × 2. El lector notará que en la población, si las variables X y Y son independientes, \(\Delta_{XY} = 0\) mientras que \(d_{XY} = 0\) no implica independencia.

Si el investigador se centra en \(d_{XY}\), entonces se pueden hacer los argumentos correspondientes; sin embargo, el papel de X y Y puede intercambiarse cuando el interés es distinto.

Por otra parte, si el interés es el efecto de la variable X sobre la variable Y, el estadístico apropiado es \(d_{YX}\), que es una medida asimétrica de Somers enfocada en cómo el orden de X ayuda a predecir el orden de Y.

Medidas \(M^{+}\) y \(M^{-}\)

La medida \(M^{+}\) corresponde al total de pares concordantes, y se calcula como:

\[ M^{+} = \sum n_{ij} \cdot N^{+}_{ij} \]

La medida \(M^{-}\) corresponde al total de pares discordantes, y se calcula como:

\[ M^{-} = \sum n_{ij} \cdot N^{-}_{ij} \]

Con el uso de estas sumas, junto con \(N_{ij}^+\) y \(N_{ij}^-\) y ponderándolas por la frecuencia en la ij-ésima celda, podemos contar los acuerdos y desacuerdos para cada par de datos en la tabla entera. (Hemos contado acuerdos y desacuerdos considerando cada objeto como cualquier otro objeto: cada par ha sido contado dos veces.)

Cap. 8. Medidas de asociación

Todos estos términos se usan para calcular la varianza de \(d_{YX}\) según la hipótesis
\(H_0: \Delta_{YX} = 0\):

\[ \mathrm{var}(d_{YX}) = 4 \left[ \sum_{i=1}^{r} \sum_{j=1}^{k} n_{ij}\,(N_{ij}^+ + M_{ij}^+ - N_{ij}^- - M_{ij}^-)^2 \right] - \left[ N^2 - \sum_{j=1}^{k} C_j^2 \right]^2 \tag{8.45} \]

Si suponemos que la muestra ha sido extraída de una población con una distribución uniforme sobre todas las celdas en la tabla, la ecuación (8.45) se simplifica a:

\[ \mathrm{var}(d_{YX}) = \frac{4(r^2 - 1)(k + 1)}{9 N r^2 (k - 1)} \tag{8.46a} \]

La ecuación (8.46a) también parece ser un estimador razonable de
\(\mathrm{var}(d_{YX})\), aun cuando la muestra no sea multinomial. Debido a su facilidad de cálculo, puede usarse la ecuación (8.46a) cuando el investigador puede suponer un muestreo multinomial uniforme.

Para probar la hipótesis
\(H_0: \Delta_{YX} = 0\)
contra la alterna uni o bidireccional se usa el siguiente estadístico:

\[ z = \frac{d_{BA}}{\sqrt{\mathrm{var}(d_{YX})}} \tag{8.47} \]

Este valor se distribuye de manera aproximadamente normal con media cero y desviación estándar uno. Esta significación de \(z\) y, de aquí, la de \(d_{BA}\), puede determinarse consultando la tabla A del Apéndice I.

Si el investigador quiere probar la hipótesis acerca de \(\Delta_{AB}\), entonces la varianza \(\mathrm{var}(d_{AB})\) podría calcularse mediante la ecuación (8.45), excepto que el denominador fuera reemplazado por

\[ \left( N^2 - \sum_{i=1}^{r} R_i^2 \right)^2 \]

Si la varianza fuera a estimarse mediante la ecuación (8.46a), las variables \(r\) y \(k\) serían intercambiadas:

\[ \mathrm{var}(d_{XY}) = \frac{4(k^2 - 1)(r + 1)}{9 N k^2 (r - 1)} \tag{8.46b} \]

Debe notarse que la varianza proporcionada por la ecuación (8.45) no puede usarse para determinar intervalos de confianza o para probar otras hipótesis diferentes de \(H_0 : \Delta_{BA} = 0\). En las referencias al final de esta sección se proporcionan las varianzas para otras situaciones.


Asociación asimétrica de Somers

Ejemplo. En el estudio de actitud del ejemplo previo, encontramos que \(d_{YX} = 0.189\). No podemos hablar acerca de la magnitud de \(d_{YX}\) sola si el valor observado es significativamente diferente de 0. Probaremos la hipótesis
\(H_0: \Delta_{BA} = 0\) contra la hipótesis
\(H_1: \Delta_{BA} \neq 0\).
Se usará una prueba bidireccional debido a que los autores no tienen nociones a priori acerca de la relación entre la educación y la actitud. Empezamos calculando \(\mathrm{var}(d_{YX})\):

\[ \mathrm{var}(d_{BA}) = 4 \left[ \sum_{i=1}^{r} \sum_{j=1}^{k} n_{ij} (N_{ij}^+ + M_{ij}^+ - N_{ij}^- - M_{ij}^-)^2 \right] - \left( N^2 - \sum_{j=1}^{k} C_j^2 \right)^2 \tag{8.45} \]

\[ = 4[(22)(66 - 0) + (39)(42 - 11) + \ldots + (12)(75 - 22) + (10)(100 - 0)] \]

\[ \div\ [165^2 - (33^2 + 63^2 + 37^2 + 32^2)]^2 \]

\[ = \frac{4(389\,112)}{19\,774^2} \]

\[ = 0.00398 \]

# Valores del ejemplo tal como aparecen en el libro
# (suma = 389112, N = 165, columnas = 33, 63, 37, 32)
suma <- 389112
N <- 165
C <- c(33, 63, 37, 32)

# Denominador del libro
den <- (N^2 - sum(C^2))^2

# Varianza
var_dBA <- 4 * suma / den
var_dBA
## [1] 0.003980573

Usando este valor para la varianza, podemos calcular

z <- round(somers_d / sqrt(var_dBA),)
z
## [1] 3

Ya que este valor excede el valor crítico (bidireccional) de z para a = 0.05, podemos rechazar la hipótesis de que la educación no tiene relación con la actitud. Nótese, sin embargo, que no hemos probado si existe una asociación entre la educación y la actitud. Hemos considerado sólo la relación asimétrica de la relación con la actitud.