R: передать аргумент glm внутри функции R

Я пытаюсь привыкнуть к решению проблем в R. Я хотел бы вызвать функциюglm() внутри функции, но она не работает, по-видимому, из-за ограниченных масштабов мне не удалось исправить с помощью функцийassign() или жеeval().

Вот упрощенная версия:

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
}

Теперь я хочу использовать функцию ao () в моем наборе данных

    ao (y = Prop, x = Age, dataset = mydata, weights = Total) 

Это не работает, но работает следующее:

ao (y = mydata$Prop, x = mydata$Age, dataset = mydata, weights = mydata$Total)

Кто-нибудь знает что делать ?

Любая помощь будет принята с благодарностью !!!

Кстати, вот как повторить мою проблему с набором данных, который я использую

library("MASS")
data(menarche)
mydata <- menarche
mydata$Prop <- mydata$Menarche / mydata$Total

Ответы на вопрос(3)

Ваш ответ на вопрос