NaN output only when using three ouput for QR
Afficher commentaires plus anciens
I'm trying to use the canoncorr function. I removed all features with NaN values from my two input matrices. Still, I get the error
Error using canoncorr (line 86)
X must contain at least one non-constant column.
This is because the function qr in
[Q1,T11,perm1] = qr(X,0);
returns all-NaN Q1 and T11, therefore at the next line rankX is 0.
Nonetheless, I noted that if I run only [Q1,T11] = qr(X,0); or [T11] = qr(X,0); all looks ok.
Any guess on what is going on?
Thank you
1 commentaire
Chuguang Pan
le 17 Avr 2025
I guess the matrix X contains NaN
Réponses (1)
Christine Tobler
le 22 Avr 2025
1 vote
The 3-output syntax and the 2-output syntax of QR use different implementations, so that's likely the reason you're seeing different outcomes.
I would usually expect no NaNs in Q and T11 if X has no NaN or Inf entries - but this is possible in extreme cases, for example when the values are close to realmax, where a sum will overflow to Inf.
If you can attach a .mat file with the matrix X, I can take a closer look.
Catégories
En savoir plus sur Analysis of Variance and Covariance dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!