[R] Fisher's discriminant functions

Prof Brian Ripley ripley at stats.ox.ac.uk
Wed Oct 5 12:03:39 CEST 2005


On Wed, 5 Oct 2005, Leonardo Lami wrote:

> Hi,
> I have the same problem.
> I found a solution but I think there is something of more simple and correct.
>
> I take a group and I put 0 the values of the other group, after I use the
> function "glm" to abtain the  Fisher's discriminant function for this group.
> I repeat the same for all the groups.

Which family in glm?  There is a way to do Fisher's LDF by least-squares 
regression, but some further computations are required.  The details are 
in section 3.2 of my PRNN book.

lda() does do Fisher's discriminant function, but note Fisher only did 
this for 2 groups and 1 function.  The predict method evaluates the LDF, 
so just look at the code to see how it does it (you need to be careful 
about a lot of details to maintain accuracy).

>
> Some times ago i try to make the same query but without results.
>
> Best wishes
> Leonardo
>
> Alle 22:22, giovedì 29 settembre 2005, Kjetil Holuerson ha scritto:
>> This are in various packages, you could have a look at
>> ade4 (on CRAN).
>>
>> Kjetil
>>
>> C NL wrote:
>>> Hi everyone,
>>>
>>>   I'm trying to solve a problem about how to get the
>>> Fisher's discriminant functions of a "lda" (linear
>>> discriminant analysis) object, I mean, the object
>>> obtained from doing "lda(formula, data)" function of
>>> the package MASS in R-project. This object gives me
>>> the canonical linear functions (n-1 coefficients
>>> matrix of n groups at least), and only with this
>>> information I could predict the group of an
>>> observation data using the "predict" function. But
>>> what I need is the Fisher's discriminant functions (n
>>> coefficients matrix of n groups) in order to classify
>>> my future data.
>>>
>>>    The object "predict" gives me only the following
>>> attributes "x", "posterior" and "class", but none of
>>> them are the coefficients matrix of the Fisher's
>>> discriminant functions, and the reason why I'm not
>>> using the "predict" function for my predictions is
>>> because the time spent is very high for what I'm
>>> expecting, about 0.5 seconds while I can obtain this
>>> prediction with the Fisher's discriminant functions
>>> faster.
>>>
>>>    So, I don't know if there's a package which I can
>>> use to obtain the mentioned coefficients matrix of the
>>> Fisher's discriminant functions.
>>>
>>>    I anyone can help, I would appreciate it greatly.
>>>
>>> Thank you and regards.
>>>
>>>    Carlos Niharra López
>>>
>>> ______________________________________________
>>> 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
>>
>> --
>>
>> ______________________________________________
>> 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
>
> -- 
> Leonardo Lami
> lami at faunalia.it            www.faunalia.it
> Via Colombo 3 - 51010 Massa e Cozzile (PT), Italy   Tel: (+39)349-1310164
> GPG key @: hkp://wwwkeys.pgp.net http://www.pgp.net/wwwkeys.html
> https://www.biglumber.com
>
> ______________________________________________
> 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
>

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595


More information about the R-help mailing list