MATLAB: How to make an assignment for the for loop

for loopstruct

Hello,
I have some data that I am trying to manipluate to get some other data. For instance I have a time history data, and I am trying to convert it to a set of SRS data. So, SBOB already has a ton of data stored in it. But for some reason it doesn't like it when I try to make the assignment SBOB.x. Can anyone please help me resolve my issue, it will be most appreciated.
Sincerely,
Robert
Error: Unable to perform assignment because dot indexing is not supported for variables of this type.
Error in Drop_Table_DATA_Extraction (line 73)
SBOB.x{p} = [SBOB{1,p}.tt,SBOB{1,p}.Acc(:,r)];
CODE:
for r = 1:16
for p = 1:length(SBOB)
SBOB.x{p} = [SBOB{1,p}.tt,SBOB{1,p}.Acc(:,r)];
SBOB.SRS{p} = gsrs(SBOB.x{p});
end
end

Best Answer

This syntax with the curly braces next to SBOS means it is a cell array:
SBOB{ whatever }
But this syntax with the dot notation next to SBOB means it is a struct array:
SBOB.whatever
So, which is it? And what are you trying to do? What does this show:
whos SBOB
If SBOS is really a cell array, maybe you need this syntax instead?
SBOB{p}.x = [SBOB{p}.tt,SBOB{p}.Acc(:,r)];
SBOB{p}.SRS = gsrs(SBOB{p}.x);