Array of Struct: Index exceeds matrix dimensions

1 visualizzazione (ultimi 30 giorni)
pamela sulis
pamela sulis il 27 Ott 2015
Modificato: pamela sulis il 27 Ott 2015
Hi! I have a problem with an array of struct: I have an array that includes 106 struct. I want to convert string in number. If I use the function datevec on a single struct I have not problems; on the contrary when I want to apply the function datevec to all the structs in the array with a for cycle, the code generate an error: 'Index exceeds matrix dimensions'
for i=1:106
date=datevec(s(1,i).locs(:,1));
% Data di inizio rilevazione
dateStart=datevec(s(1,i).places.startdate(:,1));
% Data fine rilevazione
dateEnd=datevec(s(1,i).places.endate(:,1));
end
I don't understand what is my error! Maybe I have to pre-allocate date, dateStart and dateEnd like struct?

Risposte (1)

Thorsten
Thorsten il 27 Ott 2015
Modificato: Thorsten il 27 Ott 2015
Maybe you defined datevec as a variable? Please check using
which datevec
And does s always contain 106 elements? To make the code more robust you can use
for i = 1:size(s,2)
  1 Commento
pamela sulis
pamela sulis il 27 Ott 2015
no, no datavec is not a variable... it is a matlab function. Thanks for the second suggest! I modify the code

Accedi per commentare.

Categorie

Scopri di più su Structures in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by