Clear Filters
Clear Filters

How to append a vector to a cell array?

60 views (last 30 days)
L'O.G.
L'O.G. on 29 Mar 2022
Commented: L'O.G. on 29 Mar 2022
How do you append a vector to an existing cell array? Each element of the latter contains a vector with double precision. I want to append vectors as new elements in the cell array.

Accepted Answer

Jan
Jan on 29 Mar 2022
Edited: Jan on 29 Mar 2022
C = {[1,4,1], 0:10}; % The cell
v = linspace(1, 10, 100); % The vector
C{end + 1} = v;
% Or:
C{numel(C) + 1} = v;
% Or slower and less elegant:
C = cat(2, C, {v})
  3 Comments
Jan
Jan on 29 Mar 2022
Edited: Jan on 29 Mar 2022
In exactly the shown way:
C = {[1,4,1], 0:10}; % The cell
v = linspace(1, 10, 100); % The first vector
w = rand(1, 17); % The second vector
... % Equivalent for more vectors
C{end + 1} = v;
C{end + 1} = w;
% Or:
C = cat(2, C, {v, w})
% Equivalent:
nC = numel(C)
C(nC + 1:nC + 2) = {v, w};

Sign in to comment.

More Answers (1)

Voss
Voss on 29 Mar 2022
% A cell array of vectors, C:
C = {[1 2 3]; [1 2 3 4 5]; [1; 2; 3; 4; 5; 6]}
C = 3×1 cell array
{[ 1 2 3]} {[1 2 3 4 5]} {6×1 double }
% Append a new vector to the end of C:
new_vector = 1:10;
C{end+1} = new_vector
C = 4×1 cell array
{[ 1 2 3]} {[ 1 2 3 4 5]} {6×1 double } {[1 2 3 4 5 6 7 8 9 10]}

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!