supongamos que tengo la siguiente matriz:encontrar valores NaN es matriz de células
a = {1; 'abc'; NaN}
Ahora queremos averiguar en la que los índices esta contiene NaN, de modo que pueda sustituirlos por '' (cadena vacía) .
Si uso cellfun
con isnan
puedo obtener una salida inútil
cellfun(@isnan, a, 'UniformOutput', false)
ans =
[ 0]
[1x3 logical]
[ 1]
Entonces, ¿cómo puedo hacer esto correcto?
Si 'x' es una matriz, es necesario alterar la función anónima a' @ (x) any (any (isnan (x))) '(es decir, agregue' any' por segunda vez, para asegurarse de obtener un escalar de la función)). –
@ peci1: tienes razón. En realidad, de manera más general, sería mejor hacer 'any (isnan (x (:))', que funciona para matrices de cualquier dimensión y llama a 'any' solo una vez. –