How do I add NaNs to each of a set of vectors of different lengths to make them all the same length please?
12 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Michel Nieuwoudt
il 18 Ago 2016
Commentato: Bojie Sheng
il 26 Set 2019
I have 13 columns that I'd like to put into a matrix, but they are different lengths. I can add NaN to them to make them the same length; if the max length is say 5000, how do I add NaNs to the others to make them all 5000 please?
0 Commenti
Risposta accettata
Walter Roberson
il 18 Ago 2016
Matrix = nan(5000,13);
Matrix(1:length(FirstVariable), 1) = FirstVariable;
Matrix(1:length(SecondVariable), 2) = SecondVariable;
and so on.
If the values were in a cell array then there would be other methods available as well.
Più risposte (2)
Azzi Abdelmalek
il 18 Ago 2016
Modificato: Azzi Abdelmalek
il 18 Ago 2016
v1=(1:5)';
v2=(1:8)';
v3=(1:7)'
n=10
A={v1 v2 v3 }
out=cell2mat(cellfun(@(x) [x;nan(n-numel(x),1)],A,'un',0) )
1 Commento
Bojie Sheng
il 26 Set 2019
Hi how can I add nan at the end of each row, not each coloum. For example:
v1=(1:5);
v2=(1:8);
v3=(1:7);
n=10;
A={v1; v2; v3; };
How to use cell2mat?
Vedere anche
Categorie
Scopri di più su Logical 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!