NaN output only when using three ouput for QR
1 view (last 30 days)
Show older comments
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
Answers (1)
Christine Tobler
on 22 Apr 2025
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.
0 Comments
See Also
Categories
Find more on Analysis of Variance and Covariance in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!