how to get the array values using as index of another array values

2 次查看(过去 30 天)
N=10
for i=1:N
format shortg
tmp = clock;
out(i,:) = tmp([5,6])
end
in_zone=nonzeros(zone);
out =
35 8.347
35 8.351
35 8.355
35 8.359
35 8.362
35 8.366
35 8.37
35 8.376
35 8.379
35 8.383
35 8.387
35 8.39
35 8.393
35 8.396
35 8.4
in_zone =
2
3
4
6
8
10
now i wish to store the out value acooarding to in_zone value in the array example below
new_array=
2 35 8.351
3 35 8.355
4 35 8.359
6 35 8.366
8 35 8.376
10 35 8.383
  1 个评论
Stephen23
Stephen23 2015-5-4
编辑:Stephen23 2015-5-4
Do not place the format call inside the loop! format only needs to be called once and its new setting will apply to the entire MATLAB session. Read more about it in the documentation:
Also note that you should not use i or j as variable names, as these are both names of the inbuilt imaginary unit.

请先登录,再进行评论。

回答(1 个)

Stephen23
Stephen23 2015-5-4
编辑:Stephen23 2015-5-4
Just use the in_zone values as row indices like this:
new array = [in_zone, out(in_zone,:)]

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by