Foro de debate

test de Friedman

test de Friedman

de Angel Pascual Asura -
Número de respuestas: 4

Se trata de ver s el nivel sociocultural (A, B y C) influye en el interés por el estudio.
La tabla de datos es la siguiente:

Conjuntos

A

B

C

1

17

15

12

2

15

16

14

3

18

15

17

4

17

18

12

5

14

17

13

6

13

18

19

7

16

16

19

8

16

17

16

9

19

17

15

10

17

18

14

La tabla se ha importado desde Excel con formato csv

> Friedman <- read.table("I:/FicherosEstadistica/Friedman.csv", header=TRUE, sep=";", na.strings="NA", dec=".",

+   strip.white=TRUE)

> attach(Friedman)

 

Me da este error al intertar realizar el test de Friedman y no encuentro la razón

> friedman.test(A,B,C)

Error in friedman.test.default(A, B, C) :

  not an unreplicated complete block design


En respuesta a Angel Pascual Asura

Re: test de Friedman

de Manuel Muñoz Márquez -

Buenas:

¿Has comprobado que las variables se importan como numéricas? Tal vez sea un error en la lectura de los datos.

Aprovecho la ocasión para comentarte que el uso de attach no está recomendado, puede generar problemas.

Un saludo.

En respuesta a Manuel Muñoz Márquez

Re: test de Friedman

de Angel Pascual Asura -

Muchas gracias por la respuesta. He comprobado los datos y sí que son numéricos:


> str(Friedman)


'data.frame':  10 obs. of  3 variables:

 $ A: num  17 15 18 17 14 13 16 16 19 17

 $ B: num  15 16 15 18 17 18 16 17 17 18

 $ C: num  12 14 17 12 13 19 19 16 15 14

Con las siguientes instrucciones me da el mismo error:

> friedman.test(Friedman)

Error in friedman.test.default(Friedman) :  argument "groups" is missing, with no default

> friedman.test((Friedman),data=Friedman)

Error in friedman.test.default((Friedman), data = Friedman) :  argument "groups" is missing, with no default

Si transformo los datos en matriz se realiza el análisis pero el resultado no es correcto y la ji cuadrado de Friedman es 3,35 en el ejercicio realizado manualmente y el resultado con R es:

> Friedman<-matrix(Friedman, ncol=3,byrow=T)

> friedman.test(Friedman)

        Friedman rank sum test

data:  Friedman

Friedman chi-squared = 0.47368, df = 2, p-value =0.7891

No encuentro la solución



En respuesta a Angel Pascual Asura

Re: test de Friedman

de Manuel Muñoz Márquez -

Buenas:

> A=c(17, 15, 18, 17, 14, 13, 16, 16, 19, 17)
> B=c(15, 16, 15, 18, 17, 18 ,16 ,17 ,17 ,18)
> C=c(12, 14, 17, 12, 13, 19, 19, 16, 15, 14)
> ?friedman.test
> friedman.test(cbind(A,B,C))

    Friedman rank sum test

data:  cbind(A, B, C)
Friedman chi-squared = 3.5263, df = 2, p-value = 0.1715

No veo el motivo por el que te sale otro valor.

Un saludo.

En respuesta a Manuel Muñoz Márquez

Re: test de Friedman

de Angel Pascual Asura -

Muchas gracias Manuel.

He solucionado el problema pero sin entender cuál era, ya que ejecutando los mismos pasos, creo, me ha dado el resultado. No entiendo qué pasaba, aunque supongo que había algún error que no puedo saber ya que no conservo los chunk's anteriores