# How to append a vector to a cell array?

71 views (last 30 days)
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.

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 CommentsShow 1 older commentHide 1 older comment
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};
L'O.G. on 29 Mar 2022
Thank you!

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

R2021b

### Community Treasure Hunt

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

Start Hunting!