[R-es] Función assign y paste0 en un loop

2015-02-04 Thread Isa García Barón
Hola, espero explicar bien el problema que tengo.

Estoy intentando hacer loops para glm's. El problema vieneal nombrar cada
glm de una manera y realizar la seleccion por AIC mediante la función step.

Cuando realizo los glm utilizo las funcion assign y paste0, para nombrar a
cada uno distinto:

asssign(paste0("glm",i),glm(ap~V1+V2+V3+V4+V5,data=datos,family =
binomial(link=logit)))

Después, lo que pretendo es realizar la selección por AIC, mediante la
función step para cada glm credo anteriormente y ahí viene el problema, no
se cómo decirle que me haga el step para cada glm con cada nombre creado
anteriormente:

assign(paste0("glmstep",i),step("glm",i)

Error: unexpected symbol in:
"assign(paste0("glmstep",i),step("glm",i)
todosres"

Necesito hacer esto para extraer los coeficientes de todos los glm finales
seleccionados, en esta parte supongo que también tendré el mismo problema...

A continuación el script completo:

nes <- read.csv('C:/Aegmon/nes.csv', sep=';', header=T)

nreps=5

#selecting all rows with presences
index1=which(nes$ap==1)
np=length(index1)

#create object to holdall results of predicting the probability
#of the observation left out
todosres=matrix(0,nrow=nt,ncol=nreps)

for (i in 1:np){
  datos=nesting[-index1[i],]
  datosp=datos[datos$ap==1,]
  datosa=datos[datos$ap==0,]
  ndatosa=nrow(datosa)

  for (j in 1:nreps) {
datosarand=datosa[sample(ndatosa,size=np,replace=FALSE),]
newsamp=rbind(datosp,datosarand)
asssign(paste0("glm",i),glm(ap~V1+V2+V3+V4+V5,data = datos,family =
binomial(link=logit)))
save(list=paste0("glm",i),file=paste0("resultsglm/glm",i,".Rdata"))
assign(paste0("glmstep",i),step("glm",i)
todosres[,j]=predict.glm(object=glmtempstep,newdata=nes,type="response")
  }
}

coeffsglm=matrix(0,nrow=nt,ncol=9)
for (i in 1:nt){

coeffsglm[j,]=as.numeric(eval(parse(text=paste0("glmstep",i,"$coefficients"
}


Espero haberme explicado bien, muchas gracias

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


RE: [R-es] Funci�n assign y paste0 en un loop

2015-02-04 Thread Isidro Hidalgo
¿Es posible que lo que busques sea la función get()?
Un saludo

Isidro Hidalgo Arellano
Observatorio Regional de Empleo
Consejería de Empleo y Economía
http://www.jccm.es
> -Mensaje original-
> De: R-help-es [mailto:r-help-es-boun...@r-project.org] En nombre de Isa
> García Barón
> Enviado el: miércoles, 04 de febrero de 2015 11:08
> Para: r-help-es@r-project.org
> Asunto: [R-es] Función assign y paste0 en un loop
>
> Hola, espero explicar bien el problema que tengo.
>
> Estoy intentando hacer loops para glm's. El problema vieneal nombrar
> cada glm de una manera y realizar la seleccion por AIC mediante la
> función step.
>
> Cuando realizo los glm utilizo las funcion assign y paste0, para
> nombrar a cada uno distinto:
>
> asssign(paste0("glm",i),glm(ap~V1+V2+V3+V4+V5,data=datos,family =
> binomial(link=logit)))
>
> Después, lo que pretendo es realizar la selección por AIC, mediante la
> función step para cada glm credo anteriormente y ahí viene el problema,
> no se cómo decirle que me haga el step para cada glm con cada nombre
> creado
> anteriormente:
>
> assign(paste0("glmstep",i),step("glm",i)
>
> Error: unexpected symbol in:
> "assign(paste0("glmstep",i),step("glm",i)
> todosres"
>
> Necesito hacer esto para extraer los coeficientes de todos los glm
> finales seleccionados, en esta parte supongo que también tendré el
> mismo problema...
>
> A continuación el script completo:
>
> nes <- read.csv('C:/Aegmon/nes.csv', sep=';', header=T)
>
> nreps=5
>
> #selecting all rows with presences
> index1=which(nes$ap==1)
> np=length(index1)
>
> #create object to holdall results of predicting the probability #of the
> observation left out
> todosres=matrix(0,nrow=nt,ncol=nreps)
>
> for (i in 1:np){
>   datos=nesting[-index1[i],]
>   datosp=datos[datos$ap==1,]
>   datosa=datos[datos$ap==0,]
>   ndatosa=nrow(datosa)
>
>   for (j in 1:nreps) {
> datosarand=datosa[sample(ndatosa,size=np,replace=FALSE),]
> newsamp=rbind(datosp,datosarand)
> asssign(paste0("glm",i),glm(ap~V1+V2+V3+V4+V5,data = datos,family =
> binomial(link=logit)))
> save(list=paste0("glm",i),file=paste0("resultsglm/glm",i,".Rdata"))
> assign(paste0("glmstep",i),step("glm",i)
>
> todosres[,j]=predict.glm(object=glmtempstep,newdata=nes,type="response"
> )
>   }
> }
>
> coeffsglm=matrix(0,nrow=nt,ncol=9)
> for (i in 1:nt){
>
> coeffsglm[j,]=as.numeric(eval(parse(text=paste0("glmstep",i,"$coefficie
> nts"
> }
>
>
> Espero haberme explicado bien, muchas gracias
>
> 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

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


[R-es] Interpretación de coeficientes en un cox proportional hazards con variable strata

2015-02-04 Thread José Luis Cañadas Reche

Buenas.

Abajo pongo la  salida de un modelo de cox , dónde he estratificado por 
una variable de país (Countryb)  y por otra (Q6). Además hay interacción 
entre la variable mobilityPDurG2 (es una variable 0,1, y 0 es la 
categoría de referencia)  país.

 La categoría de referencia para país es "united kingdom".

Mi duda surge si quiero calcular el hazard ratio para los que tienen un 
1 en mobilityPDurG2 en los diferentes países respecto a los que tienen 0.


En principio sería con los exp(coef), de forma que por ejemplo para el 
Reino unido sería 0.78592 y para  Bélgica 0.65489, pero no estoy seguro 
y no he encontrado por ahí como se interpreta cuando tengo interacción 
entre la variable de estrato y una covariable.


Gracias..

summary(mod.cph.strat3)
Call:
coxph(formula = S1.nuevo ~ mobilityPDurG2 * strata(Countryb) +
strata(Q6), data = datos[filtro, ], method = "breslow")

  n= 5885, number of events= 4397

coef exp(coef) se(coef)  z Pr(>|z|)
mobilityPDurG2 -0.24090   0.78592  0.06930 -3.476 0.000509 ***
mobilityPDurG2:strata(Countryb)Countryb=belgium -0.42328   0.65489  
0.21738 -1.947 0.051514 .
mobilityPDurG2:strata(Countryb)Countryb=france -0.13352   0.87501  
0.13945 -0.957 0.338326
mobilityPDurG2:strata(Countryb)Countryb=germany -0.01344   0.98665  
0.13199 -0.102 0.918871
mobilityPDurG2:strata(Countryb)Countryb=italy 0.19129   1.21081  
0.11428  1.674 0.094149 .
mobilityPDurG2:strata(Countryb)Countryb=netherlands -0.10238   0.90269  
0.13224 -0.774 0.438819
mobilityPDurG2:strata(Countryb)Countryb=poland 0.17324   1.18916  
0.25840  0.670 0.502579
mobilityPDurG2:strata(Countryb)Countryb=spain -0.49122   0.61188  
0.14938 -3.288 0.001008 **
mobilityPDurG2:strata(Countryb)Countryb=sweden -0.28491   0.75208  
0.12522 -2.275 0.022884 *
mobilityPDurG2:strata(Countryb)Countryb=switzerland -0.14876   0.86178  
0.16448 -0.904 0.365771

---

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


Re: [R-es] BioStatFLOSS

2015-02-04 Thread miguel.angel.rodriguez.muinos
Hola Xavier.

Me alegro mucho de que el BioStsFLOSS os haya servido para "desfacer el 
entuerto".
Uno de los objetivos del proyecto era conseguir dotar de funcionalidad a R en 
"entornos hostiles" (aulas de inform�tica, redes corporativas, ...)

Ahora mismo estamos con la fase Beta de EpiLinux 4 y, te adelanto, dispondr� 
(tambi�n) de una edici�n virtualizada para poder usarla desde cualquier sistema 
operativo (adem�s de nativamente o en una versi�n live).

Gracias por tu feedback, se agradece enormemente!

Pd.- Los que estamos/est�n detr�s del proyecto se hacen visibles cuando pulsas 
en el n�mero de versi�n de la pantalla que hace las veces de lanzador de las 
aplicaciones. :)

Un saludo,
Miguel.




De: Xavier de Pedro [mailto:xavier.depe...@vhir.org]
Enviado el: viernes, 30 de enero de 2015 16:42
Para: Rodr�guez Mu��os, Miguel �ngel; r-help-es@r-project.org
Asunto: Re: [R-es] BioStatFLOSS

Miguel,

Desde nuestra unidad, os agradecemos un mont�n el trabajo realizado a los que 
est�is detr�s del BioStatFLOSS.

El lunes que viene empezamos la edici�n anual del curso de estad�stica para la 
investigaci�n biom�dica, donde se usa R y R Commander, fundamentalmente, y 
hemos tenido que hacer un cambio de �ltima hora del aula que estaba prevista en 
el hospital para dar el curso. El nuevo aula no ten�a instalado R ni Rcmdr, y 
los t�cnicos de soporte nos lo pon�an negro para tener todo listo a tiempo para 
la semana que viene.

Hemos probado esta ma�ana poner BioStatFLOSS en un usb, para mirar si 
funcionar�a en esos ordenadores (sin que tengamos contrase�a de administrador 
para instalar programas, etc), y ��va de perlas!! Nos hab�is solucionado un 
problemilla, y adem�s, los alumnos del curso se llevar�n en el USB una versi�n 
funcional y portable a sus laboratorios, centros, casa, etc. Cosa que les har� 
(a los que trabajen con windows, al menos), el proceso de seguir el curso mucho 
m�s f�cil, etc.

Por tanto, MIL Gracias (�sois uns cracs!...). Para otra vez queda usar la 
distro Epilinux que tambi�n hac�is vosotros! (pero esta vez no es posible, 
porque esos ordenadores tienen capado el arranque por usb, etc).

Un abrazo,

Xavier

--

Xavier de Pedro Puente, Ph.D.

Statistics and Bioinformatics Unit (UEB)

Vall d'Hebron Research Institute (VHIR)

Passeig de la Vall d'Hebron, 119-129

08035 Barcelona. Catalonia. Spain



Ph. +34 934894007 / Fax +34 934894015

xavier.depe...@vhir.org

http://ueb.vhir.org



Collaborate: http://www.yoinvestigo.org - http://www.faigrecerca.org



Nota: A informaci�n contida nesta mensaxe e os seus posibles documentos 
adxuntos � privada e confidencial e est� dirixida �nicamente � seu 
destinatario/a. Se vostede non � o/a destinatario/a orixinal desta mensaxe, por 
favor elim�nea. A distribuci�n ou copia desta mensaxe non est� autorizada.

Nota: La informaci�n contenida en este mensaje y sus posibles documentos 
adjuntos es privada y confidencial y est� dirigida �nicamente a su 
destinatario/a. Si usted no es el/la destinatario/a original de este mensaje, 
por favor elim�nelo. La distribuci�n o copia de este mensaje no est� autorizada.

See more languages: http://www.sergas.es/aviso_confidencialidad.htm

[[alternative HTML version deleted]]

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