Improper assignment with rectangular empty matrix

1 Ansicht (letzte 30 Tage)
pamela sulis
pamela sulis am 29 Okt. 2015
Kommentiert: Ingrid am 29 Okt. 2015
Hi! I have a struct s, I want inizialize dateAll with a matrix of zeros different for every loop I try this two codes:
1) for i=1:106
dateAll=zeros(size(s(1,i).locs),6);
end
this code run but return only the last value of dateAll
2) for i=1:106
dateAll(i)=zeros(size(s(1,i).locs),6);
end
To solve the problem of code 1) I think to use an index in dateAll but matlab generates an
error: 'Improper assignment with rectangular empty matrix'
Can you help me to find the error?

Antworten (1)

Ingrid
Ingrid am 29 Okt. 2015
first of all, do you want to store the values of dateAll for each iteration or do you only want to use it inside your dateloop?
if the first is what yo are trying to achieve you should write
dateAll{i} = zeros(size(s(1,i).locs),6);
  2 Kommentare
pamela sulis
pamela sulis am 29 Okt. 2015
yes, I want to store the values in dateAll for each iteration. I try your solution but matlab generates another error
Cell contents assignment to a non-cell array object.
Error in ProvaArrayStruct (line 9)
dateAll{k}=zeros(size(s(1,k).locs),6);
Ingrid
Ingrid am 29 Okt. 2015
that is probably because you already have the dateAll variable in your workspace. Delete it first before trying again.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by