在字符串元胞数组中查找最大数 (MATLAB)

Find max number in cell array of Strings (MATLAB)

如果我有一个由字符串组成的元胞数组M(其中一些是包含单词的字符串,其他包含数字)

M={'r' '2'  '17'
   '2' 's'  '15'
   '5' '10' 'rr'
   }

我怎样才能得到第二列中的最大数字,所以答案是 10?

使用 str2double 将非数字字符串转换为 NaN 的事实,max() 默认忽略:

mx = max( str2double(M(:,2)) )

要计算平均值,MATLAB 的默认行为是 include NaN,因此您必须告诉它以其他方式表现:

mn = mean( str2double(M(:,2)), 'omitnan')