8 votos

Prueba de frecuencias emparejadas por la independencia

Espero que esto no sea ni demasiado básico o redundantes. He estado mirando a su alrededor para la orientación, pero hasta ahora todavía estoy seguro de cómo proceder.

Mis datos consta de cuenta de una particular estructura que se utiliza en las conversaciones entre pares de los interlocutores. La hipótesis que se desea probar es la siguiente: el uso más frecuente de esta estructura por parte de un orador tiende a aumentar la frecuencia de la estructura por el otro altavoz (es decir, esto podría ser evidencia de un efecto de cebado).

Así que solo tengo dos vectores, a la cuenta de Un altavoz y a la cuenta de altavoz B son las columnas, y si se alinean cada fila representa una conversación en particular, como este:

UN B
0 1
0 2
1 0
3 1
0 2
2 0
2 1

Hay alrededor de 420 conversaciones (filas). Hay un montón de ceros en los datos.

¿Cuál sería la mejor manera de analizar estos datos? Estoy usando R, si eso hace una diferencia.

Aquí es un gráfico de las frecuencias (cuenta). El eje x es el número de usos por Un altavoz, el eje y el número de usos por altavoz B. La distinción entre los altavoces sólo significa que Un altavoz habló primero, y no hay ninguna razón especial por la que lo hicieron. De lo contrario, la distinción entre el altavoz y el altavoz B es básicamente el sin sentido:

Valid XHTML

Y esta es la frecuencia relativa al número de sentencias pronunciadas por cada altavoz en cada conversación. :

Valid XHTML

(Debo mencionar que me han echado conversaciones con ninguna pega a todos, es decir, {0,0}.)

10voto

DavLink Puntos 101

Log-lineal de los modelos podría ser otra opción a la vista, si quieres estudiar su camino en dos estructura de datos.

Si se supone que las dos muestras son coincidentes (es decir, que existe algún tipo de dependencia entre las dos series de locuciones) y tener en consideración que los datos son en realidad cuenta de que puede ser considerado como la puntuación o ordenó respuestas (según lo sugerido por @caracal), entonces usted también puede mirar marginales de los modelos para matched-pairs, que generalmente implican el análisis de un cuadrado para tablas de contingencia. Puede que no sea necesariamente el caso de que usted termina con una plaza de la Tabla, pero también podemos decidir de un-límite superior para el número de, por ejemplo, las oraciones pasivas. De todos modos, los modelos de pares están bien explicadas en el Capítulo 10 de Agresti, Análisis de Datos Categóricos; modelos pertinentes para ordinal categorías en las mesas cuadradas son las pruebas de cuasi-simetría (la diferencia en el efecto de una categoría de un caso a otro sigue una tendencia lineal en la categoría de puntuaciones), condicional simetría ($\pi_{ab}<\pi_{ab}$ o $\pi_{ab}>\pi_{ab}$, $\forall a,b$), y cuasi-uniforme de asociación (lineal por lineal de la asociación de fuera de la diagonal principal, que en el caso de la igualdad de intervalo de puntuaciones significa un uniforme de local de la asociación). Ordinal cuasi-simetría (OQS) es un caso especial de lineal del modelo logit, y puede ser comparado con un modelo más simple, donde sólo marginal homogeneidad mantiene con un LR test, porque ordinal cuasi-simetría + marginales homogeneidad $=$ simetría.

Siguiente Agresti la notación (p. 429), consideramos que la $u_1\leq\dots\leq u_I$ ordenado de las puntuaciones de la variable $X$ (en las filas) y la variable $Y$ (en columnas); $a$ o $b$ denota cualquier fila o columna. El OQS modelo de lee como la siguiente log-lineal de la modelo:

$$ \log\mu_{ab}=\lambda+\lambda_a+\lambda_b+\beta u_b +\lambda_{ab} $$

where $\lambda_{ab}=\lambda_{ba}$ for all $a<b$. Compared to the usual QS model for nominal data which is $\log\mu_{ab}=\lambda+\lambda_a^X+\lambda_b^Y+\lambda_{ab}$, where $\lambda_{ab}=0$ would mean independence between the two variables, in the OQS model we impose $\lambda_b^Y-\lambda_b^X=\beta u_b$ (hence introducing the idea of a linear trend). The equivalent logit representation is $\log(\pi_{ab}/\pi_{ba})=\beta(u_b-u_a)$, for $\leq b$.

If $\beta=0$, then we have symmetry as a special case of this model. If $\beta\neq 0$, then we have stochastically ordered margins, that is $\beta>0$ means that column mean is higher compared to row mean (and the greater $|\beta|$, the greater the differences between the two joint probabilities distributions $\pi_{ab}$ and $\pi_{ba}$ are, which will be reflected in the differences between row and column marginal distributions). A test of $\beta=0$ corresponds to a test of marginal homogeneity. The interpretation of the estimated $\beta$ is straightforward: the estimated probability that score on variable $X$ is $x$ units more positive than the score on $Y$ is $\exp(\hat\beta x)$ times the reverse probability. In your particular case, it means that $\hat\beta$ might allow to quantify the influence that one particular speaker exerts on the other.

Of note, all R code was made available by Laura Thompson in her S Manual to Accompany Agresti's Categorical Data Analysis.

Hereafter, I provide some example R code so that you can play with it on your own data. So, let's try to generate some data first:

set.seed(56)
d <- as.data.frame(replicate(2, rpois(420, 1.5)))
colnames(d) <- paste("S", 1:2, sep="")
d.tab <- table(d$S1, d$S2, dnn=names(d)) # or xtabs(~S1+S2, d)
library(vcdExtra)
structable(~S1+S2, data=d)
# library(ggplot2)
# ggfluctuation(d.tab, type="color") + labs(x="S1", y="S2") + theme_bw()

Visually, the cross-classification looks like this:

   S2  0  1  2  3  4  5  6
S1                        
0     17 35 31  8  7  3  0
1     41 41 30 23  7  2  0
2     19 43 18 18  5  0  1
3     11 21  9 15  2  1  0
4      0  3  4  1  0  0  0
5      1  0  0  2  0  0  0
6      0  0  0  1  0  0  0

Now, we can fit the OQS model. Unlike Laura Thompson which used the base glm() function and a custom design matrix for symmetry, we can rely on the gnm package; we need, however, to add a vector for numerical scores to estimate $\beta$ in the above model.

library(gnm)
d.long <- data.frame(counts=c(d.tab), S1=gl(7,1,7*7,labels=0:6),
                     S2=gl(7,7,7*7,labels=0:6))
d.long$scores <- rep(0:6, each=7)
summary(mod.oqs <- gnm(counts~scores+Symm(S1,S2), data=d.long, 
                       family=poisson))
anova(mod.oqs)

Here, we have $\hat\beta=0.123$, and thus the probability that Speaker B scores 4 when Speaker A scores 3 is $\exp(0.123)=1.13$ times the probability that Speaker B have a score of 3 while Speaker A have a score of 4.

I recently came across the catspec R package which seems to offer similar facilities, but I didn't try it. There was a good tutorial at UseR! 2009 about all this stuff: Introduction to Generalized Nonlinear Models in R, but see also the accompagnying vignette, Generalized nonlinear models in R: An overview of the gnm package.

If you want to grasp the idea with real data, there are a lot of examples with real data sets in the vcdExtra package from Michael Friendly. About the OQS model, Agresti used data on Premarital Sex and Extramarital sex (Table 10.5, p. 421). Results are discussed in §10.4.7 (p. 430), and $\hat\beta$ se estima en -2.86. El código a continuación (en parte agarró de Thompson del libro de texto) para reproducir estos resultados. Nos gustaría que relevel niveles de los factores con el fin de establecer la misma línea de base de Agresti.

table.10.5 <- data.frame(expand.grid(PreSex=factor(1:4),
                                     ExSex=factor(1:4)),
                         counts=c(144,33,84,126,2,4,14,29,0,2,6,25,0,0,1,5))
table.10.5$scores <- rep(1:4,each=4)
summary(mod.oqs <- gnm(counts~scores+Symm(PreSex,ExSex), data=table.10.5, 
                       family=poisson)) # beta = -2.857
anova(mod.oqs) # G^2(5)=2.10

2voto

ashwnacharya Puntos 3144

Usted parece haber pedido datos categóricos, por lo tanto le sugiero una prueba lineal por lineal descrito por Agresti (2007, p229 ff). Función lbl_test() del paquete coin implementa en R.

Agresti, A. (2007). Introducción al análisis de datos categóricos. 2ª ed. Hoboken, New Jersey: John Wiley & Sons. Hoboken, NJ: Wiley.

0voto

Anders Sandvig Puntos 7964

Tal vez empezaría con un análisis de correlación de rango .
El problema es que puede tener correlaciones muy bajas como los efectos que intenta capturar son pequeños.

Coeficientes de correlación de Kendall y Spearman se implementan en R en

cor(x=A, y=B, method = "spearman")  
cor(x=A, y=B, method = "kendall")

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X