在matlab中使用字符串向量作为循环向量

Use vector of strings for loop vector in matlab

我想在 matlab 中使用以下向量作为循环向量:

year = ['JAN';'FEB';'MAR';'APR';'MAY';'JUN';'JUL';'AUG';'SEP';'OCT';'NOV';'DEC'];

循环是

for i = year
    %Do something
    i
end

不幸的是,我只是一个符号,而不是三个,即我期待上面的输出为

JAN
FEB
MAR
APR
.
.
.

但我只得到

J
F
M
A
M
.
.
.

我该如何改变它?或者我应该使用查找-table,并循环从 1 到 12 的向量?

你得到的是一个12x3的矩阵。要遍历所有行,您必须使用矩阵索引:

for month=1:size(year,1)
   year(month,:)
end