Я пытаюсь привыкнуть к вопросам определения области в R. Я хотел бы вызвать функцию glm()
внутри функции, но она не работает, по-видимому, по причинам, удалось установить с помощью функций assign()
или eval()
.R: передать аргумент glm внутри функции R
Вот упрощенная версия:
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 (y = Prop, x = Age, dataset = mydata, weights = Total)
Это не работает, но следующие работы:
ao (y = mydata$Prop, x = mydata$Age, dataset = mydata, weights = mydata$Total)
Кто-нибудь знает, что делать?
Любая помощь будет принята с благодарностью!
Btw, вот как повторить мою проблему с набором данных я использую
library("MASS")
data(menarche)
mydata <- menarche
mydata$Prop <- mydata$Menarche/mydata$Total
Спасибо за возможность опробовать урок, который я узнал сегодня утром на SO. –