How to index in for cycle
3 次查看(过去 30 天)
显示 更早的评论
Hello,
I have a function called Intersection_elipsoid. The functions works like that:
[lat,lon]=Intersection_elipsoid() It gives me latitude and longitude.
I want to do a for cycle and use this function with matrix X. In matrix X there are some values I use in the intersection_elipsoid function.
The for function is called location and should go through matrix X and use Intersection_elipsoid function and give me some outputs.
The problem is that the for cycle gives me only the first value from the Intersection_elipsoid function. I do not know how to "say" to the for cycle that it should give me both values. If I write: [final_lat,final_lon]=Location(X)
m=length(X)
for i=1:m
if (X(i,5)==6) && (X(i,6)==12)
[XY,YX](i,1:2)=Intersection_elipsoid
is not valid in syntax.
If I write:
[final_lat,final_lon]=Location(X)
m=length(X)
for i=1:m
if (X(i,5)==6) && (X(i,6)==12)
final_lat(i,1)=Intersection_elipsoid
It gives me only the first value.
Is there a way how to do it?
Thank you
0 个评论
采纳的回答
jonas
2018-3-1
编辑:jonas
2018-3-2
lat(i),lon(i)]=Intersection_elipsoid()
Consider preallocating your variables to avoid slow loops, by e.g. typing 'lat=nan(1,lenght(m))' before looping over m
2 个评论
Stephen23
2018-3-2
Array preallocation? It is helpful when are you giving advice to beginners to show basic MATLAB concepts, like how to preallocate arrays.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!