Loop or no Loop?

16 visualizaciones (últimos 30 días)
Pantelis Saviolakis
Pantelis Saviolakis el 24 de Feb. de 2014
Comentada: Pantelis Saviolakis el 24 de Feb. de 2014
Hello,greetings from Greece.I have a large data set with columns(longitude,latitude,u,v,w,etc).Because longitude and latitude are discontinuous in some points,i have to separate the data set in 81 parts (not equal in length) to take a different figure of each part(where longitude and latitude are continuous). I have done this manually but i was wandering if there was a way to do this in a loop(to be more beautiful),because the code i use every time is the same. The only thing that change is as an example: for the first figure i=1:1:517 , for the second figure i=518:1:721 ,for the third i=722:1:1200 ... where i is the line of the dataset and its size is not presized(the other code is the same).If someone can help, i would be gratefull.

Respuesta aceptada

Iain
Iain el 24 de Feb. de 2014
You need to figure out the right process for splitting your dataset.
Something like:
dlat = abs(diff(latitude));
datasets_end_at = find(dlat > 1);
datasets_start_at(1) = 1;
datasets_start_at(2:(numel(datasets_end_at)+1)) = datasets_end_at + 1;
datasets_end_at(end+1) = numel(latitude);
for i = 1:numel(datasets_start_at)
section_indices = datasets_start_at(i):datasets_end_at(i);
....

Más respuestas (1)

Pantelis Saviolakis
Pantelis Saviolakis el 24 de Feb. de 2014
Thank you for your direct answer to my question. I have tried it but i take only 2 figures instead of 81.I will see if i do sth wrong.Thanks again.
  2 comentarios
Iain
Iain el 24 de Feb. de 2014
You will need to adapt what I gave you for what you need:
find(dlat > 1); might need to be:
find(dlat > 0.0001);
dlat = abs(diff(latitude)); might need to be:
d_dist = sqrt(diff(latitude).^2 + diff(longitude).^2);
Pantelis Saviolakis
Pantelis Saviolakis el 24 de Feb. de 2014
Exactly..It works. THANK YOU. 'Matlab Rules'

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by