質問: '73647360' [1121] '1212' [1232] 'phoenix' [5654563] 文字と数字があり、数字は数値と文字列に分かれています。 ここで数字は全て数値にしたいと考えています。 単純にstr2num(a)をすると、 文字列または文字配列の入力が必要です。 とエラーになります。 文字列、数値の混合する中で数字だけを数値にする方法はありますか? 宜しくお願いします。
回答: str2numでは文字を空行列に変換します。 forを使わない方法を提示します。 a = {'73647360',[1121];... '1212',[1232];... 'phoenix',[5654563]}; b = cellfun(@str2num,a,'uniformoutput' ,false,'errorhandler',@(~,t)t); c = cellfun(@isempty,b); b(c) = a(c);