[R] logit link + alternatives

roger koenker rkoenker at uiuc.edu
Mon Feb 7 14:40:35 CET 2005


Just for the record --  NEWS for 2.1.0 includes:

o	binomial() has a new "cauchit" link (suggested by Roger Koenker).

the MASS polr for ordered response is also now adapted for the Cauchit 
case.


url:	www.econ.uiuc.edu/~roger        	Roger Koenker
email	rkoenker at uiuc.edu			Department of Economics
vox: 	217-333-4558				University of Illinois
fax:   	217-244-6678				Champaign, IL 61820

On Feb 7, 2005, at 7:01 AM, (Ted Harding) wrote:

> On 07-Feb-05 jeff.pr2 at added-insight.net wrote:
>>
>> Help needed with lm function:
>>
>> Dear R's,
>> Could anyone tell me how to replace the link function (probit logit,
>> loglog etc.) in lm
>> with an abitrary user-defined function? The task is to perform ML
>> Estimation of betas
>> for a dichotome target variable.
>>
>> Maybe there is already a package for this (I did not find one).
>> Any hints or a code excerpt would be welcome!
>> Thank you -Jeff
>
> I asked a similar question last year (2 April 2004) since I wanted
> a "cauchy" link in a binary response model (the data suggested
> heavy tails). I thought in the first place that I saw a fairly
> straightforward way to do it, but Brian Ripley's informed response
> put me off, once I had looked into the details of what would be
> involved (his reply which includes my original mail follows):
>
> # On Fri, 2 Apr 2004 Ted.Harding at nessie.mcc.ac.uk wrote:
> #
> # > I am interested in extending the repertoire of link functions
> # > in glm(Y~X, family=binomial(link=...)) to include a "tan" link:
> # >
> # >    eta = (4/pi)*tan(mu)
> # >
> # > i.e. this link bears the same relation to the Cauchy distribution
> # > as the probit link bears to the Gaussian. I'm interested in sage
> # > advice about this from people who know their way aroung glm.
> # >
> # > From the surface, it looks as though it might just be a matter
> # > of re-writing 'make.link' in the obvious sort of way so as to
> # > incorporate "tan", but I fear traps ...
> #
> # How are you going to do that?  If you edit make.link and have your
> # own local copy, the namespace scoping will ensure that the system
> # copy gets used, and the code in binomial() will ensure that even
> # that does not get  called except for the pre-coded list of links.
> #
> # > What am I missing?
> #
> # You need a local, modified, copy of binomial, too, AFAICS.
>
> As I say, the implied details put me off for a while, but in
> this particular case Thomas W Yee came up with a ready-made
> solution (23 April 2004):
>
> # my VGAM package at www.stat.auckland.ac.nz/~yee
> # now has the tan link for binomialff().
> # It is tan(pi*(mu-0.5)).
>
> (See his full mail in the R-help archives for April 2004
> for several important details regarding this implementation).
>
> So: it would seem to be quite possible to write yor own link
> function, but it would take quite a bit of work and would
> involves re-writing at least the codes for 'make.link'
> and for 'binomial', and being careful about how you use them.
>
> Hoping this helps,
> Ted.
>
>
> --------------------------------------------------------------------
> E-Mail: (Ted Harding) <Ted.Harding at nessie.mcc.ac.uk>
> Fax-to-email: +44 (0)870 094 0861
> Date: 07-Feb-05                                       Time: 12:57:07
> ------------------------------ XFMail ------------------------------
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! 
> http://www.R-project.org/posting-guide.html




More information about the R-help mailing list