Why is subtracting different sized matrices not giving me an error? What is matlab calculating?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
pistachionut
le 21 Mai 2019
Réponse apportée : James Tursa
le 21 Mai 2019
I was trying to write up a code for R^2 analysis and when calculating residual sum of squares I realised my model data and my real data were not the same size.
Yet somehow matlab is calculating something and giving me a matric answer. I'm confused about what it's doing. In my code fft_x is a (1000x1 double) and sxx is (1x3328 double) and so is ssres. In an ideal world where my model data and real data match in size, I would have expected a scalar. In this unfortunate case, I was expecting an error. But I'm ot getting an error. What's happening?
ssres=sum((fft_x - sxx).^2);
0 commentaires
Réponse acceptée
Plus de réponses (1)
KSSV
le 21 Mai 2019
Modifié(e) : KSSV
le 21 Mai 2019
What you are doing is not correct. Note that
fft_x - sxx
will be a matrix of size 1000X3328. It will subtract the respective elements. As you are calculating sum, it comes to 1X3328. YOu need to get them to same size either by using interpolation (interp1) or by removing some terms. Note that both the terms should be either row or column arrays.
0 commentaires
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!