[R] correspondence analysis
Jari Oksanen
jari.oksanen at oulu.fi
Wed Jun 6 13:30:05 CEST 2007
Artem Mariupol <artem.mariupol <at> gmail.com> writes:
>
> Hello,
>
> I am new to R and I have a question about the difference between
> correspondence analysis in R and SPSS.
> This is the input table I am working with (4 products and 18 attributes):
>
> > mytable
> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
> 1 15 11 20 4 14 7 1 2 1 4 12 12 17 19 11 20 9 10
> 2 19 18 14 14 16 4 14 11 11 15 22 19 22 16 21 19 15 16
> 3 16 13 10 9 15 4 10 7 11 13 18 17 14 14 16 16 13 11
> 4 21 18 16 14 20 6 12 14 14 17 23 20 19 18 21 18 19 18
>
> I found the function corresp() in the package MASS, but the results are
> different from the output in SPSS. Also, I don't understand the coordinates;
> in the biplot I cannot find a -2 limit for example from the first product on
> any of the x axes.
>
At a quick look, there is nothing strange in the result. Have you contacted SPSS
and asked them to explain their deviant results?
It seems that biplot.correspondence is undocumented. However, it has argument
'type' which defaults to "symmetric", other alternative being "rows" and
"columns". Intelligent guess is that this selects the scaling of row and column
scores, and type="symmetric" scales both. By selecting type="columns", only
columns are scaled and the -2 value for a row will be displayed (which proves
that the guess was correct).
I don't have a clue how SPSS scales results, but I guess that the differences in
the results may be due to different scalings. Function corresp gives you
weighted orthonormal row and column scores, but scales these in the plot like
specified. It may be that SPSS does the scaling already in the printout (and
does not give you the choice of type?). Another possible source of difference is
that corresp gives you "canonical correlations" whereas some other program or
function may give you their squares, a.k.a. eigenvalues. Moreover, the sign is
arbitrary so that negative and positive scores may be switched between programs.
I hope this helps,
Jari Oksanen
More information about the R-help
mailing list