I think the following is a bug in cancor. When one of the inputs are rank deficient, the output loses dimensions.
Look at the following taken from example(cancor):
> pop <- LifeCycleSavings[, 2:3] > oec <- LifeCycleSavings[, -(2:3)] > cancor(pop, oec) $cor [1] 0.8247966 0.3652762
$xcoef
[,1] [,2]
pop15 -0.009110856 -0.03622206
pop75 0.048647514 -0.26031158$ycoef
[,1] [,2] [,3]
sr 0.0084710221 0.03337935588 -0.005157129776
dpi 0.0001307398 -0.00007588232 0.000004543705
ddpi 0.0041706000 -0.01226789642 0.051883236069$xcenter pop15 pop75 35.0896 2.2930
$ycenter
sr dpi ddpi
9.6710 1106.7584 3.7576> pop <- sweep(pop, 1, apply(pop, 1, sum), "/") # artificially constructing rank-deficient data.
> cancor(pop, oec)
$cor
[1] 0.8184737
$xcoef
[,1]
pop15 -2.818801$ycoef
[,1] [,2] [,3]
sr 0.0065719475 0.03128130402 -0.01381394682
dpi 0.0001349168 -0.00006333436 0.00002564945
ddpi 0.0036178800 0.00226518493 0.05330614649$xcenter
pop15 pop75
0.92893618 0.07106382$ycenter
sr dpi ddpi
9.6710 1106.7584 3.7576>
Look at xcoef: The coefficient for pop75 is mising. (I encountered this programming reduced rank regression).
Kjetil
--
Kjetil Halvorsen.
Peace is the most effective weapon of mass construction.
-- Mahdi Elmandjra-- No virus found in this outgoing message. Checked by AVG Anti-Virus.
______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-devel
