Yo utilizaría el paquete agricolae. Tiene un comando kruskal que además 
del test de kruskal-wallis te incluye las comparaciones múltiples.

Para cada especie solo tendrías que ejecutar el comando kruskal.

De todos modos. No consigo saber de tu planteamiento además de la 
especie cuál es el factor que quieres relacionar con la variable 
numérica (¿siempre audacia?). En el ejemplo que pones el factor número 
no aparece repetido nunca y por tanto no puede ser un factor que agrupe 
de algún modo a los individuos para calcula la mediana de cada nivel y 
después comparar las medianas de estos niveles.

Saludos.

El 21/01/14 00:15, Manuel Azcárate escribió:
> Hola.
>
>
> Llevo poco tiempo con R y estoy  atascado en un problemilla, a ver si
> podéis ayudarme. Estoy trabajando con una base de datos sobre personalidad
> en diferentes especies de aves. Esta base tiene datos de más de 7000
> individuos y me gustaría crear un bucle mediante el cual realizar un test
> de Kruskal Wallis por cada especie (quiero ver si los comportamientos son
> consistentes dentro de cada especie).
>
>
> La base de datos que estoy (llamada birddata) utilizando sigue este modelo:
>
>
> Especie (factor)                               Audacia (numérico)       Numero
> (factor)
>
> Cotorra                                                1.2
>                  1
>
> Cotorra                                                0.8
>                  2
>
> Cotorra                                                1.5
>                  3
>
> Buitre                                                  2.0
>                  4
>
> Buitre                                                  1.8
>                  5
>
> Buitre                                                  2.5
>                  6
>
> Gorrión                                                1.5
>                  7
>
> Gorrión                                                1.7
>                  8
>
> Gorrión                                                1.3
>                  9
>
> Gorrión                                                1.9
>                  10
>
>
>
>
> Para ello he utilizado el siguiente código (el test utilizo la columna de
> "Numero" para que cada dato se tome como un grupo independiente y poder
> compararlos).
>
>
> "rep.var=matrix(nrow = length(names(table(birddata$especie))), ncol = 1)
>
> for (i in 1:length(names(table(birddata$especie)))) {
>
> rep.var[i,1]=na.omit(kruskal.test(Audacia~Numero, data = birddata))
>
> }"
>
>
> Y me da el siguiente error
>
>
> "Error en rep.var[i, 1] = na.omit(kruskal.test(strangeraggr ~ num, data =
> fdata)) :
>
>    número de items para para sustituir no es un múltiplo de la longitud del
> reemplazo"
>
>
> He intentando buscar cómo solucionarlo, pero no he encontrado ninguna
> manera satisfactoria que no me de otro errordiferente.  A ver si me podéis
> ayudar.
>
>
> Muchas gracias por adelantado
>
> Un saludo
>
> 	[[alternative HTML version deleted]]
>
>
>
> _______________________________________________
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es


	[[alternative HTML version deleted]]

