total=o;
for j=1:size(Silence_duration)
total=total+Silence_duration{1,j};
end
但是'总计'是[]为空。如果我们把总数作为大小(Silence_duration,1),那么它只显示Silence_duration中的第一个值{1,j}
答案 0 :(得分:0)
尽量避免在Matlab中循环;它们比矩阵运算慢得多。
我认为total = sum(Silence_duration(1, :));
会给你想要的东西。这意味着“取Silence_duration第一列的总和”。
答案 1 :(得分:0)
确保Silence_duration {1,j}是双倍的。 否则尝试total = total + str2num(Silence_duration {1,j})。 或者实际存在的任何值,如果不是字符串。
另外,size(Silence_duration)将等于1.如果你想要多个值,请放大小(Silence_duration,2),我假设这是你想要循环的原因。