在字符串的单元格数组中找到最大数字(MATLAB)

时间:2017-08-08 04:25:12

标签: matlab cell-array

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

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

如何获得第二列中的最大数字,那么答案将是10?

1 个答案:

答案 0 :(得分:5)

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

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

为了计算平均值,MATLAB的默认行为是 in clude NaN,所以你必须告诉它表现不同:

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