How to add value to tables (inside a cell) from the other array?

5 views (last 30 days)
Dear all
I have an array 1x4 (namely point) and a cell 1x4 (namely C). In the C I have 6x1 tables. I want to respectively copy the value of point as the second column of each table (first cell of point for the first array of C, second cell of point for the second array of C, and so on... In fact, each array of points repeat 6 times and paste into cell arrays.
I would be grateful if anyone can tell me how it is possible.
Thank you

Accepted Answer

Image Analyst
Image Analyst on 10 May 2020
This will do it:
% Load 2 mat files:
s = load('c.mat')
c = s.C
s = load('point.mat')
p = s.point
% Now stitch p, as a column vector, onto
% the right side of each table in each cell.
for column = 1 : length(c)
% Get this table by extracting it from this cell of the cell array.
t = c{column}
% Make another column of 6 rows onto t.
% All 6 values in the second column will be 0 to start with.
t{end, 2} = 0;
% Fill up the first 4 rows of the second column
% of this table with p. Last 2 rows will remain 0.
t{1:length(p), 2} = p(:)
% Stuff new table back into the cell
c{column} = t;
end
  3 Comments
BN
BN on 11 May 2020
Thank you I use this:
p=repmat(p,6,1);
for i = 1:length(c)
t = c{i};
t{1:height(c{1, 1}), 2} = p(:,i);
c{i} = t;
end
And it fixed.
Thank you so much
Image Analyst
Image Analyst on 11 May 2020
Try it this way:
% Load 2 mat files:
s = load('c.mat')
c = s.C
s = load('point.mat')
p = s.point
% Now stitch p, as a column vector, onto
% the right side of each table in each cell.
for column = 1 : length(c)
% Get this table by extracting it from this cell of the cell array.
t = c{column};
% Make another column of 6 rows onto t.
% All 6 values in the second column will be 0 to start with.
t{end, 2} = 0;
% Fill up the first 4 rows of the second column
% of this table with p. Last 2 rows will remain 0.
t{:, 2} = p(column);
% Stuff new table back into the cell
c{column} = t;
end

Sign in to comment.

More Answers (0)

Products


Release

R2020a

Community Treasure Hunt

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

Start Hunting!