【发布时间】:2014-07-13 02:04:33
【问题描述】:
我在Matlab中工作,其中嵌套的for循环用于收集数据并存储在单元格数组中,但是我想收集数据并且内部循环在同一个单元格中进一步收集根据其位置排列。但是,我尝试过,但它首先给出外部循环值索引,然后是内部循环,我想在同一个单元格数组中 cat。
是否有任何 vectorization 技巧或其他解决我的案例的方法?
A 我的单元格数组,我想通过对我很重要的各个索引将两个循环值存储在 A 中。
我的代码:
for i=1:10
A{i}=i;
k=i;
for j=-270:90:270
if (j~=0)
A{i+k}=[j];
end
k=k+1;
end
end
实际输出: 第 1 至 14 列
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [-180] [-270] [-180] [-270]
Columns 15 through 26
[-180] [-270] [-180] [-270] [-180] [-270] [-180] [-90] [180] [90] [180] [270]
所需的输出:
[1] [-270 ] [-180 ] [-90] [ 90] [180] [270] [2] [-270 ] [-180 ] [-90] [ 90] [180] [270] [3] [-270 ] [-180 ] [-90] [ 90] [180] [270] [4] [-270 ] [-180 ] [-90] [ 90] [180] [270] [5] [-270 ] [-180 ] [-90] [ 90] [180] [270] [6] [-270 ] [-180 ] [-90] [ 90] [180] [270] [7] [-270 ] [-180 ] [-90] [ 90] [180] [270] [8] [-270 ] [-180 ] [-90] [ 90] [180] [270] [9] [-270 ] [-180 ] [-90] [ 90] [180] [270] [10] [-270 ] [-180 ] [-90] [ 90] [180] [270]
【问题讨论】:
标签: arrays matlab for-loop cell nested-loops