Jerónimo de Maíz ha escrito:
Uno de los mejores frutos de la Fisherian la revolución fue la idea de la aleatorización, y los estadísticos que están de acuerdo en pocas cosas tienen en menos de acuerdo en ello. Pero a pesar de este acuerdo y a pesar de la el uso generalizado de la aleatorios de asignación de los procedimientos en la clínica y en otras formas de experimentación, su estado lógico, es decir, la exacta la función que realiza, es todavía oscura.
Campo De Maíz, Jerónimo (1976). "Metodológicos recientes Contribuciones a los Ensayos Clínicos". American Journal of Epidemiology 104 (4): 408-421.
A lo largo de este sitio y en una variedad de literatura que siempre ve la confianza de las afirmaciones acerca de los poderes de la aleatorización. Fuerte terminología tal como "se elimina el problema de las variables de confusión" son comunes. Ver aquí, por ejemplo. Sin embargo, muchas veces los experimentos se ejecutan con muestras pequeñas (de 3 a 10 muestras por grupo) para prácticas/razones éticas. Esto es muy común en la investigación preclínica en animales y cultivos celulares y los investigadores comúnmente reportan los valores de p en apoyo de sus conclusiones.
Esto me pregunto, ¿qué tan buena es la aleatorización en equilibrio confunde. Para esta parcela modelé una situación comparar los grupos de tratamiento y control con uno de confundir que podría tomar dos valores con ocasión de 50/50 (por ejemplo, type1/type2, macho/hembra). Se muestra la distribución de "% Desequilibrado" (Diferencia en el número de type1 entre el tratamiento y las muestras de control dividido por el tamaño de la muestra) para el estudio de una variedad de tamaños de muestra pequeños. Las líneas rojas y en el lado derecho ejes mostrar la ecdf.
La probabilidad de los diversos grados de equilibrio en la aleatorización para tamaños de muestra pequeños:
Dos cosas están claras desde el este de la parcela (a menos que me equivocaba en alguna parte).
1) La probabilidad de obtener exactamente equilibrada de las muestras disminuye a medida que el tamaño de la muestra es mayor.
2) La probabilidad de obtener un muy desequilibrado de la muestra disminuye a medida que el tamaño de la muestra aumenta.
3) En el caso de n=3 para ambos grupos, hay un 3% de probabilidades de obtener un desequilibrado conjunto de grupos (todos type1 en el control, todos los type2 en el tratamiento). N=3 es común en la biología molecular de los experimentos (por ejemplo, medida de arnm con la PCR, o proteínas con western blot)
Cuando examiné el n=3 el caso más, he observado un comportamiento extraño de los valores de p en estas condiciones. El lado izquierdo muestra la distribución general de pvalues calcular utilizando la prueba t bajo condiciones de diferentes medios para la type2 subgrupo. La media para type1 fue de 0, sd=1 para ambos grupos. El derecho paneles muestran las correspondientes tasas de falsos positivos para el nominal "la importancia atajos" de .05.0001.
La distribución de los valores de p para n=3, con dos subgrupos y los diferentes medios del segundo subgrupo cuando se compararon mediante el test de la t (10000 monte carlo carreras):
Aquí están los resultados para n=4 para ambos grupos:
Para n=5 para ambos grupos:
Para n=10 para ambos grupos:
Como puede verse en los gráficos de arriba no parece haber una interacción entre el tamaño de la muestra y la diferencia entre los subgrupos que se traduce en una gran variedad de p-valor de las distribuciones bajo la hipótesis nula de que no son uniformes.
Por lo que podemos concluir que los valores de p no son fiables para adecuadamente aleatorizado y controlado de los experimentos con el pequeño tamaño de la muestra?
R código para la primera parcela
require(gtools)
#pdf("sim.pdf")
par(mfrow=c(4,2))
for(n in c(3,4,5,6,7,8,9,10)){
#n<-3
p<-permutations(2, n, repeats.allowed=T)
#a<-p[-which(duplicated(rowSums(p))==T),]
#b<-p[-which(duplicated(rowSums(p))==T),]
a<-p
b<-p
cnts=matrix(nrow=nrow(a))
for(i in 1:nrow(a)){
cnts[i]<-length(which(a[i,]==1))
}
d=matrix(nrow=nrow(cnts)^2)
c<-1
for(j in 1:nrow(cnts)){
for(i in 1:nrow(cnts)){
d[c]<-cnts[j]-cnts[i]
c<-c+1
}
}
d<-100*abs(d)/n
perc<-round(100*length(which(d<=50))/length(d),2)
hist(d, freq=F, col="Grey", breaks=seq(0,100,by=1), xlab="% Unbalanced",
ylim=c(0,.4), main=c(paste("n=",n))
)
axis(side=4, at=seq(0,.4,by=.4*.25),labels=seq(0,1,,by=.25), pos=101)
segments(0,seq(0,.4,by=.1),100,seq(0,.4,by=.1))
lines(seq(1,100,by=1),.4*cumsum(hist(d, plot=F, breaks=seq(0,100,by=1))$density),
col="Red", lwd=2)
}
R código para las parcelas de 2 a 5
for(samp.size in c(6,8,10,20)){
dev.new()
par(mfrow=c(4,2))
for(mean2 in c(2,3,10,100)){
p.out=matrix(nrow=10000)
for(i in 1:10000){
d=NULL
#samp.size<-20
for(n in 1:samp.size){
s<-rbinom(1,1,.5)
if(s==1){
d<-rbind(d,rnorm(1,0,1))
}else{
d<-rbind(d,rnorm(1,mean2,1))
}
}
p<-t.test(d[1:(samp.size/2)],d[(1+ samp.size/2):samp.size], var.equal=T)$p.value
p.out[i]<-p
}
hist(p.out, main=c(paste("Sample Size=",samp.size/2),
paste( "% <0.05 =", round(100*length(which(p.out<0.05))/length(p.out),2)),
paste("Mean2=",mean2)
), breaks=seq(0,1,by=.05), col="Grey", freq=F
)
out=NULL
alpha<-.05
while(alpha >.0001){
out<-rbind(out,cbind(alpha,length(which(p.out<alpha))/length(p.out)))
alpha<-alpha-.0001
}
par(mar=c(5.1,4.1,1.1,2.1))
plot(out, ylim=c(0,max(.05,out[,2])),
xlab="Nominal alpha", ylab="False Postive Rate"
)
par(mar=c(5.1,4.1,4.1,2.1))
}
}
#dev.off()