[R] Writing a new link for a GLM.
Jan Graffelman
jan.graffelman at upc.edu
Fri Jun 13 11:54:30 CEST 2008
Hi,
I wish to write a new link function for a GLM. R's glm routine does
not supply the "loglog" link. I modified the make.link function adding
the code:
}, loglog = {
linkfun <- function(mu) -log(-log(mu))
linkinv <- function(eta) exp(-exp(-eta))
mu.eta <- function(eta) exp(-exp(-eta)-eta)
valideta <- function(eta) all(eta != 0)
}, stop(sQuote(link), " link not recognised"))
structure(list(linkfun = linkfun, linkinv = linkinv, mu.eta = mu.eta,
valideta = valideta, name = link), class = "link-glm")
}
and then call glm with argument
glm(y~x1+x2+x3,family=binomial(link=make.link("loglog")),data=X)
and that seems to work.
Is this the way to include a new link function? Any other suggestions?
Jan.
--
------------------------------------------------------------------------
|Jan Graffelman |tel: +34-93-4011739 |
|Dpt. of Statistics & Operations Research|fax: +34-93-4016575 |
|Universitat Politecnica de Catalunya |email: jan.graffelman at upc.edu|
|Av. Diagonal 647, 6th floor |www: |
|08028 Barcelona, Spain | http://www-eio.upc.es/~jan/|
More information about the R-help
mailing list