how to reshape a matrix?

1 visualizzazione (ultimi 30 giorni)
navid zed
navid zed il 27 Dic 2016
Modificato: Stephen23 il 27 Dic 2016
I have a matrix that it is 321*531. It includes NaN values, which i have to eliminate them. Thus, I used this code:
m=~isnan(x);
v=x(m)';
then it turned to 1*75638. I wanna reshape it to 321*531,but I don't know how can I do this.I have tried reshape function,but it doesn't work.
please help me. thanks
  2 Commenti
José-Luis
José-Luis il 27 Dic 2016
Modificato: José-Luis il 27 Dic 2016
Well, if there are NaN's and you eliminate them, your matrix can not keep its same shape unless you replace them with something else. What's it gonna be?
Stephen23
Stephen23 il 27 Dic 2016
Modificato: Stephen23 il 27 Dic 2016
@navid zed: the number of elements that you have 75638 is not divisible by the number of rows that you want 321:
>> 75638/321
ans = 235.63
What do you imagine happening, should MATLAB magically invent some data to fill in the gap?

Accedi per commentare.

Risposte (1)

adi kul
adi kul il 27 Dic 2016
If you are okay with replacing NaN values with Zeros then:
A(isnan(A))=0
Here A will be your matrix.

Categorie

Scopri di più su Matrices and Arrays in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by