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

Respuestas a la pregunta(3)

Su respuesta a la pregunta