for instance, for logistic regression you can do something like this:

# simulate some data
x <- cbind(1, runif(100, -3, 3), rbinom(100, 1, 0.5))
y <- rbinom(100, 1, plogis(c( x%*% c(-2, 1, 0.3))))

# BFGS from optim()
fn <- function (betas, y, x) {
  -sum(dbinom(y, 1, plogis(c(x %*% betas)), log = TRUE))
}
optim(rep(0, ncol(x)), fn, x = x, y = y, method = "BFGS")

# IWLS from glm()
glm(y ~ x[, -1], family = "binomial")

You can also improve it by providing the minus score vector as a third argument to optim().


I hope it helps.

Best,
Dimitris


On 10/26/2010 1:38 PM, justin bem wrote:
Dear all,

By default the glm function in the stats package use IWLS. How can I fit a glm
model using BFGS algorithm ?
  Justin BEM
BP 1917 Yaoundé
Tél (237) 76043774




        [[alternative HTML version deleted]]




______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

--
Dimitris Rizopoulos
Assistant Professor
Department of Biostatistics
Erasmus University Medical Center

Address: PO Box 2040, 3000 CA Rotterdam, the Netherlands
Tel: +31/(0)10/7043478
Fax: +31/(0)10/7043014
Web: http://www.erasmusmc.nl/biostatistiek/

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to