3 votos

pruebas t de una muestra aplicadas a cada fila - error "los datos son esencialmente constantes

Tengo tres réplicas de un experimento que me da proporciones de la abundancia de diferentes péptidos.

Si tomo los datos de un péptido:

pep1 <- c(4.3, 5.7, 6.3)

Puedo utilizar una prueba t de una muestra para probar la hipótesis de que la proporción es diferente de 1:

t.test(pep1, 
       alternative=c("greater"),
       mu=1,
       paired=FALSE,
       var.equal=FALSE,
       conf.level=0.95)

de salida:

data:  pep1
t = 7.4818, df = 2, p-value = 0.0087
alternative hypothesis: true mean is greater than 1
95 percent confidence interval:
 3.703107      Inf
sample estimates:
mean of x 
 5.433333 

Sin embargo, si intento aplicar esto a las filas de un marco de datos llamado peptides donde cada fila es un péptido distinto, con tres proporciones:

t_test <- function(x) p_val =  t.test(x, 
                                      alternative=c("greater"),
                                      mu=1,
                                      paired=FALSE,
                                      var.equal=FALSE,
                                      conf.level=0.95)$p.value

apply(peptides, 1, t_test)

Tengo la data are essentially constant error.

No lo entiendo. Creo que apply está haciendo lo que quiero porque si sustituyo 't-test' por 'mean' entonces hace los cálculos correctos.

Mi objetivo es obtener los valores p para cada péptido y luego ajustarlos para las comparaciones múltiples.

Soy relativamente nuevo en R, y cualquier consejo será muy apreciado.

3voto

Hans Moerbeek Puntos 11

He encontrado el problema en mis datos - Hay un péptido en el que las proporciones son idénticas en las tres réplicas. Por supuesto, esto significa que no es posible estimar los intervalos de confianza y realizar las pruebas t. La eliminación de este valor permite que el código funcione bien.

Muchas gracias a todos los que han echado un vistazo al problema.

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