¿Cómo puedo detectar celdas vacías en una matriz de celdas? Sé que el comando para eliminar la celda vacía es a(1) = []
, pero parece que no puedo hacer que MATLAB detecte automáticamente qué celdas están vacías.¿Cómo puedo detectar celdas vacías en una matriz de celdas?
Antecedentes: preasigné una matriz de células con a=cell(1,53)
. Luego usé if exist(filename(i))
y textscan para buscar un archivo y leerlo. Como resultado, cuando el filename(i)
no existe, se genera una celda vacía y pasamos al siguiente archivo.
Cuando termine de leer en todos los archivos, me gustaría eliminar las celdas vacías de a
. Probé if a(i)==[]
para una ligera mejora en el uso de velocidad 'emptyCells = cellfun ('IsEmpty', a);' ... 'cellfun' tiene un interruptor interno' 'declaración que comprueba si la cadena es una de las funciones que puede hacer un incremento de velocidad" mágica "con ... Esto se describe aquí: http://undocumentedmatlab.com/blog/cellfun-undocumented-performance -boost/ – JudoWill
+1 para especificar cómo eliminar las celdas vacías. Esto te deja con una matriz de celdas que contiene solo las entradas no vacías. – Matteo