Updation of Cell Array

16 views (last 30 days)
KK14
KK14 on 9 Aug 2019
Commented: KK14 on 10 Aug 2019
I have a matrix of 100*400.I need to read a cell(from matrix), take its field as store it as a structure, update one field in the structure and put this new data back to the original cell with all the fields present, but only the updated field is present.Also, horizontal concatenation did not work out.Can I get any help regarding this?Thanks in advance!
  1 Comment
Guillaume
Guillaume on 9 Aug 2019
Your question title speaks of cell array, you then state that you have a matrix, then talk about structures. These are 3 different things, so it's really unclear what you're asking.
Please provide a small example of input and desired output. Also when saying that something doesn't work provide the (erroneous) code you're using and the full text of the error message.

Sign in to comment.

Accepted Answer

per isakson
per isakson on 9 Aug 2019
Edited: per isakson on 9 Aug 2019
Is something like this what you are looking for? I don't quite understand what you tried.
Try this code
%% Sample data
cell_array = cell( 100, 400 );
ix_row = 117;
ix_col = 314;
S = struct( 'f1', 1, 'f2', 2, 'f3', 3 );
cell_array{ ix_row, ix_col } = S;
%% reference the content of cell(ix_row,ix_col)
>> sas = cell_array{ ix_row, ix_col }
sas =
struct with fields:
f1: 1
f2: 2
f3: 3
%% Update one field of the struct in the cell(ix_row,ix_col)
>> sas.f2 = 200;
>> cell_array{ ix_row, ix_col } = sas;
>> cell_array{ ix_row, ix_col }
ans =
struct with fields:
f1: 1
f2: 200
f3: 3
  6 Comments
per isakson
per isakson on 10 Aug 2019
"But I am unable to do so [i.e. retrieve the values of the fields, f1 and f3]" It's hard for me to tell why, since you provide so little information. I have no problem doing it in my example and I assume that you can successfully repeat my example. (I use R2018b.)
Show
  • the value of the cell in question before the update (I assume it's a struct.)
  • statement by statement how you update one field of the value of the cell in question
  • the value of the cell in question after the update
  • statement by statement how you try to retrieve the values of the fields that you didn't update
KK14
KK14 on 10 Aug 2019
OK.Thank you so much for the help!

Sign in to comment.

More Answers (0)

Categories

Find more on Cell Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!