Buenas noches Javier y José, Estoy en contra de usar attach(), asi que propongo la siguiente alternativa con with(): # paquete require(epicalc) # los argumentos en ... pasan de epicalc:::cc # ver ?cc para mas informacion foo <- function(var1, var2, var3, ...){ or1 <- cc(var1, var2, ...) or2 <- cc(var1, var3, ...) list(or1 = or1, or2 = or2) } # datos x <- read.csv("~/Downloads/OR.csv") head(x) # resultados SIN graficas with(x, foo(estado, cake, chocolate, graph = FALSE)) Saludos, Jorge.- 2014-08-21 12:40 GMT+10:00 Javier Marcuzzi <javier.ruben.marcuzzi en gmail.com> :> Estimado José Betancourt > > Copio y pego una forma donde anda, básicamente es lo mismo pero con una > pequeña diferencia, es tan parecido que están los dos códigos a > continuación. > > Javier Marcuzzi > > library(epicalc) > #Comando que llama a una función > rm(list=ls()) > #setwd("D:/DEMO_new/demo_scripts/OR/") > #setwd("D:/Public/Documents/R/EPICALC/funciones/OR/") > #data= mydata<-read.csv("OR.csv",header=TRUE, sep=",", dec=".") > data <- read.csv("~/Descargas/OR.csv",header=TRUE, sep=",", dec=".") > data2 <- read.csv("~/Descargas/OR.csv",header=TRUE, sep=",", dec=".") > use(data) > attach(data) > var1=estado > var2=cake > var3=chocolate > > # source("function_or.r") > #función > odratios <- function (data,var1,var2,var3){ > or1 <-cc(var1, var2) > or2 <- cc(var1, var3) > } > odratios(data,var1,var2,var3) > > odratios2 <- function (data,estado,cake,chocolate){ > or1 <-cc(estado, cake) > or2 <- cc(estado, chocolate) > } > odratios2(data2,estado,cake,chocolate) > > > El 20 de agosto de 2014, 21:10, Dr. José A Betancourt Bethencourt < > jbetancourt en iscmc.cmw.sld.cu> escribió: > > > Estimados > > > > Estoy entrenando hacer funciones que respondan a comandos, > > > > > > > > en esta caso en la salida gráfica se observa que dice : Exposure=var3 y > > outcome=var 1 > > > > > > > > quisiéramos que se reflejan los nombres de la base de datos : > var1=estado, > > var2=cake, var3=chocolate > > > > > > > > Espero haberme explicado adecuadamente > > > > Adjunto tabla con datos > > > > > > > > #################################### > > > > > > > > #Comando que llama a una función > > > > rm(list=ls()) > > > > #setwd("D:/DEMO_new/demo_scripts/OR/") > > > > #setwd("D:/Public/Documents/R/EPICALC/funciones/OR/") > > > > > > > > data= mydata<-read.csv("OR.csv",header=TRUE, sep=",", dec=".") > > > > use(data) > > > > attach(data) > > > > > > > > var1=estado > > > > var2=cake > > > > var3=chocolate > > > > library(epicalc) > > > > source("function_or.r") > > > > odratios(data,var1,var2,var3) > > > > > > > > > > > > #función > > > > odratios <- function (data,var1,var2,var3){ > > > > or1 <-cc(var1, var2) > > > > or2 <- cc(var1, var3) > > > > } > > > > _______________________________________________ > > R-help-es mailing list > > R-help-es en r-project.org > > https://stat.ethz.ch/mailman/listinfo/r-help-es > > > > > > [[alternative HTML version deleted]] > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >[[alternative HTML version deleted]]
Buenas noches Yo estoy de acuerdo con Jorge, yo copie y modifique sobre ese código, en mi parte no uso attach(), nunca lo uso, es más, lo pensé como posible problema, como también nunca me acostumbro al with(). Javier El 21/08/14 a las 00:33, Jorge I Velez escibió:> Buenas noches Javier y José, > > Estoy en contra de usar attach(), asi que propongo la siguiente > alternativa con with(): > > # paquete > require(epicalc) > > # los argumentos en ... pasan de epicalc:::cc > # ver ?cc para mas informacion > foo <- function(var1, var2, var3, ...){ > or1 <- cc(var1, var2, ...) > or2 <- cc(var1, var3, ...) > list(or1 = or1, or2 = or2) > } > > # datos > x <- read.csv("~/Downloads/OR.csv") > head(x) > > # resultados SIN graficas > with(x, foo(estado, cake, chocolate, graph = FALSE)) > > Saludos, > Jorge.- > > > > 2014-08-21 12:40 GMT+10:00 Javier Marcuzzi > <javier.ruben.marcuzzi en gmail.com > <mailto:javier.ruben.marcuzzi en gmail.com>>: > > Estimado José Betancourt > > Copio y pego una forma donde anda, básicamente es lo mismo pero > con una > pequeña diferencia, es tan parecido que están los dos códigos a > continuación. > > Javier Marcuzzi > > library(epicalc) > #Comando que llama a una función > rm(list=ls()) > #setwd("D:/DEMO_new/demo_scripts/OR/") > #setwd("D:/Public/Documents/R/EPICALC/funciones/OR/") > #data= mydata<-read.csv("OR.csv",header=TRUE, sep=",", dec=".") > data <- read.csv("~/Descargas/OR.csv",header=TRUE, sep=",", dec=".") > data2 <- read.csv("~/Descargas/OR.csv",header=TRUE, sep=",", dec=".") > use(data) > attach(data) > var1=estado > var2=cake > var3=chocolate > > # source("function_or.r") > #función > odratios <- function (data,var1,var2,var3){ > or1 <-cc(var1, var2) > or2 <- cc(var1, var3) > } > odratios(data,var1,var2,var3) > > odratios2 <- function (data,estado,cake,chocolate){ > or1 <-cc(estado, cake) > or2 <- cc(estado, chocolate) > } > odratios2(data2,estado,cake,chocolate) > > > El 20 de agosto de 2014, 21:10, Dr. José A Betancourt Bethencourt < > jbetancourt en iscmc.cmw.sld.cu > <mailto:jbetancourt en iscmc.cmw.sld.cu>> escribió: > > > Estimados > > > > Estoy entrenando hacer funciones que respondan a comandos, > > > > > > > > en esta caso en la salida gráfica se observa que dice : > Exposure=var3 y > > outcome=var 1 > > > > > > > > quisiéramos que se reflejan los nombres de la base de datos : > var1=estado, > > var2=cake, var3=chocolate > > > > > > > > Espero haberme explicado adecuadamente > > > > Adjunto tabla con datos > > > > > > > > #################################### > > > > > > > > #Comando que llama a una función > > > > rm(list=ls()) > > > > #setwd("D:/DEMO_new/demo_scripts/OR/") > > > > #setwd("D:/Public/Documents/R/EPICALC/funciones/OR/") > > > > > > > > data= mydata<-read.csv("OR.csv",header=TRUE, sep=",", dec=".") > > > > use(data) > > > > attach(data) > > > > > > > > var1=estado > > > > var2=cake > > > > var3=chocolate > > > > library(epicalc) > > > > source("function_or.r") > > > > odratios(data,var1,var2,var3) > > > > > > > > > > > > #función > > > > odratios <- function (data,var1,var2,var3){ > > > > or1 <-cc(var1, var2) > > > > or2 <- cc(var1, var3) > > > > } > > > > _______________________________________________ > > R-help-es mailing list > > R-help-es en r-project.org <mailto:R-help-es en r-project.org> > > https://stat.ethz.ch/mailman/listinfo/r-help-es > > > > > > [[alternative HTML version deleted]] > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org <mailto:R-help-es en r-project.org> > https://stat.ethz.ch/mailman/listinfo/r-help-es > >[[alternative HTML version deleted]]
Muchas gracias! José De: "Marcuzzi, Javier Rubén" [mailto:javier.ruben.marcuzzi en gmail.com] Enviado el: jueves, 21 de agosto de 2014 02:42 Para: Jorge I Velez CC: "Dr. José A Betancourt Bethencourt"; Lista R Asunto: Re: [R-es] pregunta Buenas noches Yo estoy de acuerdo con Jorge, yo copie y modifique sobre ese código, en mi parte no uso attach(), nunca lo uso, es más, lo pensé como posible problema, como también nunca me acostumbro al with(). Javier El 21/08/14 a las 00:33, Jorge I Velez escibió: Buenas noches Javier y José, Estoy en contra de usar attach(), asi que propongo la siguiente alternativa con with(): # paquete require(epicalc) # los argumentos en ... pasan de epicalc:::cc # ver ?cc para mas informacion foo <- function(var1, var2, var3, ...){ or1 <- cc(var1, var2, ...) or2 <- cc(var1, var3, ...) list(or1 = or1, or2 = or2) } # datos x <- read.csv("~/Downloads/OR.csv") head(x) # resultados SIN graficas with(x, foo(estado, cake, chocolate, graph = FALSE)) Saludos, Jorge.- 2014-08-21 12:40 GMT+10:00 Javier Marcuzzi <javier.ruben.marcuzzi en gmail.com <mailto:javier.ruben.marcuzzi en gmail.com> >: Estimado José Betancourt Copio y pego una forma donde anda, básicamente es lo mismo pero con una pequeña diferencia, es tan parecido que están los dos códigos a continuación. Javier Marcuzzi library(epicalc) #Comando que llama a una función rm(list=ls()) #setwd("D:/DEMO_new/demo_scripts/OR/") #setwd("D:/Public/Documents/R/EPICALC/funciones/OR/") #data= mydata<-read.csv("OR.csv",header=TRUE, sep=",", dec=".") data <- read.csv("~/Descargas/OR.csv",header=TRUE, sep=",", dec=".") data2 <- read.csv("~/Descargas/OR.csv",header=TRUE, sep=",", dec=".") use(data) attach(data) var1=estado var2=cake var3=chocolate # source("function_or.r") #función odratios <- function (data,var1,var2,var3){ or1 <-cc(var1, var2) or2 <- cc(var1, var3) } odratios(data,var1,var2,var3) odratios2 <- function (data,estado,cake,chocolate){ or1 <-cc(estado, cake) or2 <- cc(estado, chocolate) } odratios2(data2,estado,cake,chocolate) El 20 de agosto de 2014, 21:10, Dr. José A Betancourt Bethencourt < jbetancourt en iscmc.cmw.sld.cu <mailto:jbetancourt en iscmc.cmw.sld.cu> > escribió:> Estimados > > Estoy entrenando hacer funciones que respondan a comandos, > > > > en esta caso en la salida gráfica se observa que dice : Exposure=var3 y > outcome=var 1 > > > > quisiéramos que se reflejan los nombres de la base de datos : var1=estado, > var2=cake, var3=chocolate > > > > Espero haberme explicado adecuadamente > > Adjunto tabla con datos > > > > #################################### > > > > #Comando que llama a una función > > rm(list=ls()) > > #setwd("D:/DEMO_new/demo_scripts/OR/") > > #setwd("D:/Public/Documents/R/EPICALC/funciones/OR/") > > > > data= mydata<-read.csv("OR.csv",header=TRUE, sep=",", dec=".") > > use(data) > > attach(data) > > > > var1=estado > > var2=cake > > var3=chocolate > > library(epicalc) > > source("function_or.r") > > odratios(data,var1,var2,var3) > > > > > > #función > > odratios <- function (data,var1,var2,var3){ > > or1 <-cc(var1, var2) > > or2 <- cc(var1, var3) > > } >> _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org <mailto:R-help-es en r-project.org> > https://stat.ethz.ch/mailman/listinfo/r-help-es > >[[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list R-help-es en r-project.org <mailto:R-help-es en r-project.org> https://stat.ethz.ch/mailman/listinfo/r-help-es -- Nunca digas nunca, di mejor: gracias, permiso, disculpe. Este mensaje le ha llegado mediante el servicio de correo electronico que ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema Nacional de Salud. La persona que envia este correo asume el compromiso de usar el servicio a tales fines y cumplir con las regulaciones establecidas Infomed: http://www.sld.cu/ [[alternative HTML version deleted]]