1 votos

Densidad animal y locomoción: análisis teniendo en cuenta los datos que faltan

Quiero ver si el número de animales en un prado tiene algún efecto sobre la distancia caminada al día por los animales.

Tengo datos sobre la distancia que recorre un animal (al día) frente al número de animales que hay en un prado.

[Las distancias no son independientes (es decir, la distancia que recorre un animal afecta significativamente a la distancia que recorren todos los demás, ya que suelen vivir en manadas), por lo que, aunque dispongo de los datos originales, estoy bastante seguro de que no puedo utilizar resultados por animal, sino que creo que debo tomar la media de todos los animales del prado].

Se realizaron 3 pruebas, que son las siguientes:

En el primero había dos grupos de control, 30 animales en dos praderas separadas. Esto se repitió 3 días seguidos. Se registró la distancia recorrida por cada animal.

En el segundo ensayo había un grupo de control (30 animales en el prado) y un tratamiento (20 animales en otro prado). Esto se repitió 3 días seguidos.

En el tercer ensayo había un grupo de control (30 animales en un prado) y un tratamiento (10 animales en otro prado). Esto se repitió 3 días seguidos.

Realizamos las mediciones con GPS, que no era fiable al 100%, por lo que no dispongo de los resultados de todos los animales en todos los días. Esto significa que tampoco puedo tomar los resultados de los 3 días sin parar, ya que en algunos tratamientos sólo funcionaron 2 collares durante todo el tiempo. Tengo que dividir los resultados en días separados, ya que algunos collares funcionaron algunos días y otros días, (de esta manera puedo tener, por ejemplo, 4 resultados por día, en lugar de utilizar sólo los dos collares que funcionaron durante todo el tiempo. Utilizar sólo 2 resultados podría causar sesgos, ya que algunos collares registran resultados ligeramente superiores a otros y algunos animales caminan más que otros).

¿Alguien podría aconsejarme sobre qué prueba estadística utilizar para adaptarla al diseño experimental y a los casos de datos ausentes?

0voto

user1291235 Puntos 143

Digamos que estos datos simulados en R reflejan sus datos (suponiendo que no se utilizan animales repetidamente en los experimentos).

#Add function to simulate missing data - 
insert_nas <- function(x) {
  len <- length(x)
  n <- sample(1:floor(0.2*len), 1)
  i <- sample(1:len, n)
  x[i] <- NA 
  x
}

#Create base simulated data
set.seed(1203030)
animalControl <- data.frame(time1 = rnorm(120, mean = 5, sd = 1),
               time2 = rnorm(120, mean = 4, sd = 1),
               time3 = rnorm(120, mean = 6, sd = 1) 
               )

animal20 <- data.frame(time1 = rnorm(30, mean = 6, sd = 1),
               time2 = rnorm(30, mean = 7, sd = 1),
               time3 = rnorm(30, mean = 6, sd = 1) 
               )

animal10 <- data.frame(time1 = rnorm(30, mean = 10, sd = 1),
               time2 = rnorm(30, mean = 9, sd = 1),
               time3 = rnorm(30, mean = 11, sd = 1) 
               )

#Apply missingness and add other variables
animalControl <- cbind(animalId = seq(1:120), sapply(animalControl, insert_nas), group = "Control", exper = c(rep(1, 60), rep(2,30), rep(3, 30)), herd = c(rep(1, 30), rep(2,30), rep(3, 30), rep(4, 30)))
animal20 <- cbind(animalId = seq(121, 150, by = 1), animal20$animalId, sapply(animal20, insert_nas), group = "Treat20", exper = rep(2, 30), herd = rep(5, 30))
animal10 <- cbind(animalId = seq(151, 180, by = 1), animal10$animalId, sapply(animal10, insert_nas), group = "Treat10", exper = rep(3, 30), herd = rep(6, 30))

df <- data.frame(rbind(animalControl, animal20, animal10))
head(df)
  animalId            time1            time2            time3   group exper herd
1        1  4.5683686649673 6.84218504440714 5.63669812247394 Control     1    1
2        2 5.16742386265328 5.58724225879838 5.84898870042538 Control     1    1
3        3 5.68519677097074 4.33549563763083 6.12578675349171 Control     1    1
4        4 5.62363505382805 5.19776974967204 4.29196504220035 Control     1    1
5        5             <NA> 5.18210699347768 4.60001664866427 Control     1    1
6        6 4.25563560046411 3.48043514234613 6.18680692338524 Control     1    1

Un ejemplo de reestructuración de los datos y realización de un modelo multinivel/de efectos mixtos con observaciones anidadas en animales, que a su vez están anidados en rebaños, es el siguiente (de nuevo en R):

#Transform to long form
library(tidyr)
dfGathered <- gather(df, time, distance, c(time1, time2, time3))

library(lme4)
animalDistMod <- lmer(as.numeric(distance) ~ group + (1 | herd/animalId), data = dfGathered)
summary(animalDistMod)
...

Tenga en cuenta que este modelo es simplemente un ejemplo. Su caso particular necesitará una especificación diferente. Existen muchos recursos sobre modelización de efectos mixtos en Internet y Crossvalidated, tanto para la especificación como para la interpretación.

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