R: Pasa el argumento a glm dentro de una función R
Estoy tratando de acostumbrarme a los problemas de alcance en R. Me gustaría llamar a la funciónglm()
Dentro de una función, pero no funciona, aparentemente por razones de alcance, no logré arreglar con las funcionesassign()
oeval()
.
Aquí hay una versión simplificada:
ao <- function (y, x, phi = seq (0,1,0.1), dataset, weights) {
logLikvector <- rep(0,length(phi)) # vector of zeros to be replaced thereafter
for (i in 1:length(phi)) { # loop to use glm()
fit <- glm (y ~ x, data = dataset, family = binomial, weights = weights)
logLikvector[i] <- logLik(fit) # get log likelihood
}
logLikvector
}
Ahora quiero usar la función ao () en mi conjunto de datos
ao (y = Prop, x = Age, dataset = mydata, weights = Total)
Esto no funciona, pero los siguientes trabajos:
ao (y = mydata$Prop, x = mydata$Age, dataset = mydata, weights = mydata$Total)
Alguien sabe qué hacer ?
Cualquier ayuda sería apreciada grandemente !!!
Por cierto, aquí es cómo replicar mi problema con el conjunto de datos que estoy usando
library("MASS")
data(menarche)
mydata <- menarche
mydata$Prop <- mydata$Menarche / mydata$Total