Re: [R-es] p values con LMER

2014-06-13 Por tema Marcelino de la Cruz


Para obtener el pvalue de un t-test, lo que puedes hacer es

(1-pt(abs(tval), df=dftval))*2

donde tval es el valor de tu estadístico t (el que te sale en el 
summary) y  dftval son los grados de libertad del test.


La discusión sobre los p-valores en los modelos mixtos tiene que ver con 
cómo estimar adecuadamente los grados de libertad. Una vez decidas 
cuántos grados de libertad tienes, ya lo tienes solucionado ... ;-)


Saludos,

Marcelino




El 13/06/2014 14:05, José Luis Cañadas escribió:

Existe discusión sobre el uso de los p-valores en modelos mixtos. Como se
ha dicho antes, para mi  lo más adecuado es comparar modelos mediante la
función anova.  Por Internet se puede encontrar un buen libro de Douglas
Bates y en español,  busca modelos mixtos con R de Luis Cayuela, enfocado
hacia ecología, pero está muy bien
El 13/06/2014 14:00, Jorge I Velez jorgeivanve...@gmail.com escribió:


Hola Miguel,


2014-06-13 21:50 GMT+10:00 Miguel Lázaro lazar...@yahoo.es:


Hola Manuel
lo he tratado de hacer pero me sale

Error: unexpected string constante in:




Creo que te falto una 




anova(a,as,test=Chisq)


   ^
  debe ser
  anova(a, as, test = Chisq)

Saludos,
Jorge.-





no tengo ni idea de por qué...

Me resulta alucinante no poder contar ya con pvals.fnc. ¿Será imposible
hacerse con ello?

Saludos,
Miguel




El vie, 13/6/14, Manuel Azcárate mazcarategar...@gmail.com escribió:

  Asunto: Re: [R-es] p values con LMER
  Para: Miguel Lázaro lazar...@yahoo.es
  CC: r-help-es@r-project.org
  Fecha: viernes, 13 de junio, 2014 13:21



  Hola Miguel,


  Aunque algo más arduo que
  algún paquete que lo calcule
  directamente, yo lo que hago es crear un modelo reducido sin
  la variable de la
  que quiero saber el pvalor y compararlos mediante un test
  anova. El valor
  obtenido por esta comparación puede utilizarse con el
  pvalor de esa variable.


  Por ejemplo:

  Lm1=lmer(rt_ln ~ (fre_ln *
  Z_nsize * frebase_ln + (1|word),
  data = x)

  Lm2= lmer(rt_ln ~ (Z_nsize
  * frebase_ln + (1|word), data =
  x)

  anova(Lm1,Lm2,
  test=Chisq) #Obtiens el pvalor de
  la variable fre_ln



  Lm3=lmer(rt_ln ~ (fre_ln *
  frebase_ln + (1|word), data = x)

  anova(Lm1,Lm3,
  test=Chisq) #Obtiens el pvalor de
  la variable  Z_nsize



  Espero que te sea de
  utilidad,

  Un saludo

  Manuel



  El 13 de junio de 2014,
  12:25, Miguel Lázaro lazar...@yahoo.es
  escribió:

  Hola
  a todos,

  quería preguntaros un medio para obtener los valores p
  usando lmer. He tratado con pvals.fnc, que es lo que me
  habían recomendado, pero por algún motivo no está ya
  disponible etc.



  Ésta es la función que tengo, pero da las t,
  sin los valores p. Aunque Baayen indica que valores por
  encima de 2 son significativos necesito saber las p.



  resultado = lmer(rt_ln ~ (fre_ln * Z_nsize * frebase_ln +
  (1|word) data = x)  (abreviado)

  = print (resultado, c=F)



  Fixed effects:

 Estimate Std. Error t value

  (Intercept)6.640496   0.034490  192.54

  fre_ln-0.046880   0.008278   -5.66

  Z_nsize0.005787   0.0088490.65

  frebase_ln-0.009938   0.006670   -1.49

  Z_wlength 14.239570  20.1025360.71

  Z_slength  0.011011   0.0066921.65

  Z_TF   0.009903   0.0088011.13

  Z_prodctvsufij-0.005079   0.009052   -0.56

  Z_rootlenght -17.961932  25.420022   -0.71

  Zaverageres_1  0.018265   0.0091951.99

  Zrootlengthres_1  10.954681  15.5111460.71







  Saludos,



  Miguel



  ___

  R-help-es mailing list

  R-help-es@r-project.org

  https://stat.ethz.ch/mailman/listinfo/r-help-es

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es



 [[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]]



___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es



___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] p values con LMER

2014-06-13 Por tema Miguel Lázaro
Sí, en efecto, aunque es muy extraño porque lo ahbía mirado. Me faltaba unas 
comillas.
Ahora lo veo ahí bien claro.

Como decís hay una enorme discusión sobre esto de los valores y supongo que si 
no los dan directamente en lmer será porque decidieron no hacerlo. En todo caso 
el tema de pvals.fnc, para lo que usamos la estadística a nivel usuario, estaba 
fenomenal.
Utilizo el procedimiento que me habéis mostrado y quedo a la expectativa de que 
vuelva a estar disponible, o algo similar, lo anterior.

¡muchas gracias!

Miguel



El vie, 13/6/14, José Luis Cañadas canadasre...@gmail.com escribió:

 Asunto: Re: [R-es] p values con LMER
 Para: Jorge I Velez jorgeivanve...@gmail.com
 CC: Miguel Lázaro lazar...@yahoo.es, r-help-es r-help-es@r-project.org
 Fecha: viernes, 13 de junio, 2014 14:05

 Existe
 discusión sobre el uso de los p-valores en modelos mixtos.
 Como se ha dicho antes, para mi  lo más adecuado es
 comparar modelos mediante la función anova.  Por Internet
 se puede encontrar un buen libro de Douglas Bates y en
 español,  busca modelos mixtos con R de Luis Cayuela,
 enfocado hacia ecología, pero está muy bien 

 El 13/06/2014 14:00,
 Jorge I Velez jorgeivanve...@gmail.com
 escribió:

 Hola Miguel,





 2014-06-13 21:50 GMT+10:00 Miguel Lázaro lazar...@yahoo.es:



  Hola Manuel

  lo he tratado de hacer pero me sale

 

  Error: unexpected string constante in:

 





 Creo que te falto una 





 

  anova(a,as,test=Chisq)

 

       ^

              debe ser

                                  anova(a,
 as, test = Chisq)



 Saludos,

 Jorge.-







 

  no tengo ni idea de por qué...

 

  Me resulta alucinante no poder contar ya con pvals.fnc.
 ¿Será imposible

  hacerse con ello?

 

  Saludos,

  Miguel

 

 

 

  

  El vie, 13/6/14, Manuel Azcárate mazcarategar...@gmail.com
 escribió:

 

   Asunto: Re: [R-es] p values con LMER

   Para: Miguel Lázaro lazar...@yahoo.es

   CC: r-help-es@r-project.org

   Fecha: viernes, 13 de junio, 2014 13:21

 

 

 

   Hola Miguel,

 

 

   Aunque algo más arduo que

   algún paquete que lo calcule

   directamente, yo lo que hago es crear un modelo
 reducido sin

   la variable de la

   que quiero saber el pvalor y compararlos mediante un
 test

   anova. El valor

   obtenido por esta comparación puede utilizarse con
 el

   pvalor de esa variable.

 

 

   Por ejemplo:

 

   Lm1=lmer(rt_ln ~ (fre_ln *

   Z_nsize * frebase_ln + (1|word),

   data = x)

 

   Lm2= lmer(rt_ln ~ (Z_nsize

   * frebase_ln + (1|word), data =

   x)

 

   anova(Lm1,Lm2,

   test=Chisq) #Obtiens el pvalor de

   la variable fre_ln

 

 

 

   Lm3=lmer(rt_ln ~ (fre_ln *

   frebase_ln + (1|word), data = x)

 

   anova(Lm1,Lm3,

   test=Chisq) #Obtiens el pvalor de

   la variable  Z_nsize

 

 

 

   Espero que te sea de

   utilidad,

 

   Un saludo

 

   Manuel

 

 

 

   El 13 de junio de 2014,

   12:25, Miguel Lázaro lazar...@yahoo.es

   escribió:

 

   Hola

   a todos,

 

   quería preguntaros un medio para obtener los valores
 p

   usando lmer. He tratado con pvals.fnc, que es lo que
 me

   habían recomendado, pero por algún motivo no está
 ya

   disponible etc.

 

 

 

   Ésta es la función que tengo, pero da las
 t,

   sin los valores p. Aunque Baayen indica que valores
 por

   encima de 2 son significativos necesito saber las
 p.

 

 

 

   resultado = lmer(rt_ln ~ (fre_ln * Z_nsize *
 frebase_ln +

   (1|word) data = x)  (abreviado)

 

   = print (resultado, c=F)

 

 

 

   Fixed effects:

 

                      Estimate Std. Error t
 value

 

   (Intercept)        6.640496   0.034490
  192.54

 

   fre_ln            -0.046880   0.008278  
 -5.66

 

   Z_nsize            0.005787   0.008849  
  0.65

 

   frebase_ln        -0.009938   0.006670  
 -1.49

 

   Z_wlength         14.239570  20.102536  
  0.71

 

   Z_slength          0.011011   0.006692  
  1.65

 

   Z_TF               0.009903   0.008801  
  1.13

 

   Z_prodctvsufij    -0.005079   0.009052   -0.56

 

   Z_rootlenght     -17.961932  25.420022   -0.71

 

   Zaverageres_1      0.018265   0.009195  
  1.99

 

   Zrootlengthres_1  10.954681  15.511146    0.71

 

 

 

 

 

 

 

   Saludos,

 

 

 

   Miguel

 

 

 

   ___

 

   R-help-es mailing list

 

   R-help-es@r-project.org

 

   https://stat.ethz.ch/mailman/listinfo/r-help-es

 

  ___

  R-help-es mailing list

  R-help-es@r-project.org

  https://stat.ethz.ch/mailman/listinfo/r-help-es

 



         [[alternative HTML version deleted]]




 ___

 R-help-es mailing list

 R-help-es@r-project.org

 https://stat.ethz.ch/mailman/listinfo/r-help-es

___
R-help-es mailing list
R-help-es@r-project.org

[R-es] Crear matriz binaria

2014-06-13 Por tema Rolando Valdez
Hola,

Estoy tratando de crear una matriz cuadrada, binaria y no tengo idea por dónde 
comenzar.

Los datos que tengo son patentes e inventores por patente, las patentes las 
identifico por su código y a los inventores por nombre y también los tengo 
codificados.

Deseo hacer una matriz de nxn en donde los renglones son inventores de la A a 
la Z y columnas son los mismos inventores de la A a la Z, las entradas de la 
matriz corresponderán a 1 si el inventor A tiene una patente con el inventor 
K…L…M, cualquier otra situación será cero. Evidentemente la matriz debe tener 
ceros en la diagonal pues el inventor B no puede patentar algo con el inventor 
B.

Pues bien, intenté hacerlo en excel con tablas dinámicas pero no me permite 
poner la misma variable (inventores) en renglones y columnas. Pensé que se 
puede hacer en R, pero no tengo idea por dónde empezar, nisiquiera cuál sería 
la mejor forma de ordenar los datos.

Si pudieran ayudarme sugiréndome algún manual o algún ejemplo para comenzar, se 
los agradezco de antemano.

Saludos.

Rolando Valdez

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] Crear matriz binaria

2014-06-13 Por tema Rolando Valdez
Hola,

Esta es una tabla dinámica que cree, en donde los renglones son los inventores 
y las columnas son patentes, las entradas de la matriz tienen 1 en aquellos 
inventores que participan por patente.

https://www.dropbox.com/s/b8gx0hei6w91ko0/tabla_din.xlsx

Esta es otra tabla es un arreglo parecido al de arriba, sólo que los renglones 
son patentes y las columnas son número de inventores, tienen 1 en donde 
participan inventores en la patente.

https://www.dropbox.com/s/xpi0hescm1xm58c/tabla_din2.xlsx

Este es otro arreglo donde sólo hay tres columnas, patentes, número de inventor 
e inventor.

https://www.dropbox.com/s/rmmgiswmbppt68w/datos_col.csv


El 13/06/2014, a las 10:27, Jorge I Velez jorgeivanve...@gmail.com escribió:

 Hola Rolando,
 
 Podrias enviarnos una submatriz de esos datos?   Quizas tusdatos[1:10, 1:10]? 
   Creo que es mas facil trabajar sobre ello.  
 
 Gracias,
 Jorge.-
 
 
 
 2014-06-14 1:10 GMT+10:00 Rolando Valdez rvald...@gmail.com:
 Hola, no encuentro el momento en el que  se relacionan los inventores, es 
 decir, lo que relaciona a dos o más inventores es la patente.
 
 Primero, ¿cómo debo ordenar los datos?
 
 Tengo 1813 número de patentes, es decir, la matriz es de dimension 1813 x 
 1813.
 
 Tengo varios órdenes en los datos, por ejemplo, el primer arreglo es por 
 patente, en las columnas tengo “no. de patente”, “inventor 1”, “inventor 2”, 
 “inventor 3”…… “inventor 13”, y en las filas tengo números de patente. En las 
 entradas tengo nombre del inventor.
 
 Otro arreglo que tengo es mediante una tabla dinámica que hice en donde tengo 
 por columnas “nombre de inventor”, “inventor 1”, “inventor 2”……. “ inventor 
 13”. En los renglones tengo nombres de inventor y en las entradas tengo 1 y 0.
 
 Saludos.
 El 13/06/2014, a las 09:14, Jorge I Velez jorgeivanve...@gmail.com escribió:
 
  Hola Rolando,
 
  Podrias adaptar lo siguiente:
 
  set.seed(10)
  X - matrix(sample(0:1, 100, replace = TRUE), ncol = 10)
  colnames(X) - LETTERS[1:10]
  X
 
  Y - X = 1
  Y - apply(Y, 2, as, numeric) #boolean matrix
  rownames(Y) - rownames(X)
  Z - t(Y) %*% Y  #adjacency matrix
  Z[Z = 1] - 1
  diag(Z) - 0
  Z
 
  Saludos,
  Jorge.-
 
 
  2014-06-14 0:08 GMT+10:00 Rolando Valdez rvald...@gmail.com:
  Hola,
 
  Estoy tratando de crear una matriz cuadrada, binaria y no tengo idea por 
  dónde comenzar.
 
  Los datos que tengo son patentes e inventores por patente, las patentes las 
  identifico por su código y a los inventores por nombre y también los tengo 
  codificados.
 
  Deseo hacer una matriz de nxn en donde los renglones son inventores de la A 
  a la Z y columnas son los mismos inventores de la A a la Z, las entradas de 
  la matriz corresponderán a 1 si el inventor A tiene una patente con el 
  inventor K…L…M, cualquier otra situación será cero. Evidentemente la matriz 
  debe tener ceros en la diagonal pues el inventor B no puede patentar algo 
  con el inventor B.
 
  Pues bien, intenté hacerlo en excel con tablas dinámicas pero no me permite 
  poner la misma variable (inventores) en renglones y columnas. Pensé que se 
  puede hacer en R, pero no tengo idea por dónde empezar, nisiquiera cuál 
  sería la mejor forma de ordenar los datos.
 
  Si pudieran ayudarme sugiréndome algún manual o algún ejemplo para 
  comenzar, se los agradezco de antemano.
 
  Saludos.
 
  Rolando Valdez
 
  ___
  R-help-es mailing list
  R-help-es@r-project.org
  https://stat.ethz.ch/mailman/listinfo/r-help-es
 
 
 Rolando Valdez
 
 ___
 R-help-es mailing list
 R-help-es@r-project.org
 https://stat.ethz.ch/mailman/listinfo/r-help-es
 

Rolando Valdez

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es