我有一个单元格数组,看起来像:
'0.86'
'0.07'
'N/A'
'1.3'
Run Code Online (Sandbox Code Playgroud)
如何处理它以获得输出为双精度数组,如:
0.86
0.07
0.0
1.3
Run Code Online (Sandbox Code Playgroud)
当我尝试做类似的事情时,我陷入困境:
cellfun(@str2num,Array);
Run Code Online (Sandbox Code Playgroud)
由于str2num无法处理'N/A',我猜.
谢谢
小智 5
你非常接近解决方案.而不是使用str2num,使用str2double.
所以,
Array ={'0.86', '0.07', 'N/A', '1.3'}
cellfun(@str2double,Array)
Run Code Online (Sandbox Code Playgroud)
哪个输出(按您的要求):
ans =
0.8600 0.0700 NaN 1.3000
Run Code Online (Sandbox Code Playgroud)