5 votos

Pruebas de diferencias significativas entre regresiones en R

Estoy ejecutando varios análisis filogenéticos por mínimos cuadrados en R, donde estoy tomando un conjunto de datos existentes para varias especies, y añadiendo dos nuevas especies para las que tengo datos. Quiero probar si la nueva regresión de todas las especies es significativamente diferente de la regresión anterior. Pero no estoy seguro de la prueba adecuada a utilizar.

El conjunto de datos existente establece una regresión que debería ser aplicable a todas las especies. Puedo añadir datos sobre dos especies, y lo que encuentro es que una de las dos especies cae más o menos en la regresión predicha por el conjunto de datos original. La otra especie cae muy por debajo de la regresión predicha por el conjunto de datos original. Así que supongo que lo que estoy tratando de determinar es si hay diferencias significativas tanto en la pendiente y el intercepto, así como diferencias significativas en la fuerza de la regresión.

0 votos

Hola @Nate y bienvenido al sitio. ¿Estoy en lo cierto al afirmar que la variable dependiente (resultado) es la misma en la regresión para todas las especies y en la regresión antigua? Para comprobar si el modelo con todas las especies supone una mejora con respecto a la regresión anterior, puede utilizar una prueba de cociente de probabilidades. Véase esta entrada para ver un ejemplo práctico en R .

1 votos

¿Puede concretar en qué se diferencia la nueva regresión de la anterior? Por ejemplo, ¿se pregunta si la pendiente de la relación entre X e Y difiere según la especie, si difiere el intercepto o si difieren ambos? ¿O algo más?

0 votos

COOLSerdash, gracias por la ayuda, voy a trabajar a través de ese ejemplo y el código. @gung Lo siento, lo que estoy tratando de lograr es lo siguiente. El conjunto de datos existente establece una regresión que debería ser aplicable a todas las especies. Puedo añadir datos sobre dos especies, y lo que encuentro es que una de las dos especies cae más o menos en la regresión predicha por el conjunto de datos original. La otra especie cae muy por debajo de la regresión predicha por el conjunto de datos original. Así que supongo que lo que estoy tratando de determinar es si hay diferencias sig. tanto en la pendiente y el intercepto, al añadir los nuevos datos. Gracias.

4voto

Sean Hanley Puntos 2428

La forma más básica de hacerlo es ejecutar una nueva regresión más amplia con todos los datos. (Es decir, los datos que se habían utilizado antes, más los datos de las dos nuevas especies). Deberá crear una variable ficticia para indicar cada especie (obviamente con una especie como nivel de referencia--he explicado la codificación ficticia ici ). También querrá añadir términos de producto para la interacción entre cualquiera que sea su $X$ variable y los indicadores de especie (ya he explicado qué es una interacción ici ).

Después de haber ejecutado este modelo de regresión múltiple más amplio, compruebe si los términos de interacción son "significativos". (Ya he hablado de ello en ici .) Si cree que las interacciones aportan algo significativo, eso significa que la pendiente de la relación entre $X$ y $Y$ difiere según la especie. También puede comprobar si las variables ficticias de especie son estadísticamente significativas. Esto le dirá si los interceptos difieren según la especie. (Un par de notas: Si la interacción es significativa, la importancia de las variables ficticias / interceptos probablemente no es muy significativa, y sin duda debe mantenerse en el modelo de cualquier manera - ver ici & ici . Si la interacción es lo suficientemente no significativa como para que no te la creas, pero los dummies sí, eso significa que las líneas son paralelas entre sí pero están desplazadas verticalmente. Mi respuesta ici reúne mucha de esta información en un solo lugar).

0voto

iDev247 Puntos 152

Esta pregunta se refiere a si un nuevo punto de datos es una observación influyente en un modelo PGLS. Creo que la forma más sencilla de hacerlo sería examinar los gráficos de diagnóstico en una regresión de contrastes filogenéticamente independientes . Puedes hacerlo con la ayuda del paquete 'caper'. Se lo demostraré a continuación.

Primero simularé una filogenia, un par de rasgos correlacionados, y haré de un punto de datos un gran valor atípico.

library(phytools)

# Simulate example data with an influential data point
set.seed(23)
tree <- rcoal(12)
data <- sim.corrs(tree, vcv=matrix(c(1,0.7,0.7,1),2,2))
data <- data.frame(data, rownames=rownames(data))
names(data) <- c("x", "y", "species")
data[4,2] <- -1.8

# Visualize raw data
par(mfrow=c(1,2))
plot(tree)
nodelabels("18", 18)
plot(y~x, type="n",data=data, pch=16, xlab="x", ylab="y")
text(data$x, data$y, labels=data$species)

Resalto el nodo número 18 en la filogenia, porque es el nodo ancestral a la punta $t2$ que es la observación influyente, como se ve en el diagrama de dispersión.

Ahora, uso caper para hacer contrastes filogenéticamente independientes y ver los gráficos de diagnóstico del modelo. Observe que en estos gráficos de diagnóstico, los puntos de datos corresponden a contrastes independientes, no a puntos de datos brutos. Así, para un árbol con $n$ consejos, hay $n - 1$ contrastes filogenéticamente independientes correspondientes a cada uno de los nodos del árbol.

library(caper)

# Compute independent contrasts regression
comp.data <- comparative.data(tree, data, species)
fit <- crunch(y ~ x, data=comp.data)

# Diagnostic plots
par(mfrow=c(2,2))
plot(fit)

Como era de esperar, los cuatro gráficos señalan el nodo 18 como una de las observaciones influyentes.

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