matlab - 如果不增加值则为空赋值(Matlab)

标签 matlab

是否可以在 matlab 中检查一个值是否为空,如果为空则赋值,否则(如果不为空)在赋值期间递增该值?

例如:

在这段代码中,我递增了 majorityList{l},尽管开始时这个单元格是空的(不是 0),因此我无法递增它。这意味着我需要先检查它才能增加它。这可以在作业期间完成吗?

 majorityList{l,2} = 'test'; 
 majorityList{l}=  majorityList{l}+1; 

我写的一个解决方案是:

if length(majorityList{l})==0 
     majorityList{l} = 0;
     majorityList{l} = majorityList{l} +1;
else
    majorityList{l} = majorityList{l} +1; 
 end

虽然对于如此简单的事情来说这看起来相当难看...

最佳答案

使用isempty为此

if ~isempty(var)
   var=var+1;
end

另一方面,如果您不知道变量是否存在,请使用 exist .

关于matlab - 如果不增加值则为空赋值(Matlab),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12715574/

相关文章:

MATLAB:绘制双底 x 轴

matlab - 将 CSV 文件加载到 Octave/MATLAB 中

matlab 坐标轴转百分比

image - Matlab RGB 颜色表示([255 255 255] 和 [1 1 1])

matlab - 如何以编程方式区分 MATLAB 和 Freemat?

matlab - 是否需要转换为LIBSVM格式

matlab - 如何在 Matlab 中比较两个不同维度的矩阵并获得相等行的频率?

arrays - 删除具有相同第一列和最小第二列的行

matlab - 条形图中用标签代替颜色

arrays - 如何将结构数组保存到文本文件