Come posso rilevare celle vuote in un array di celle? So che il comando per rimuovere la cella vuota è a(1) = []
, ma non riesco a trovare MATLAB per rilevare automaticamente quali celle sono vuote.Come posso rilevare celle vuote in un array di celle?
Sfondo: Ho preassegnato un array di celle utilizzando a=cell(1,53)
. Quindi ho usato if exist(filename(i))
e textscan per verificare la presenza di un file e leggerlo. Di conseguenza, quando lo filename(i)
non esiste, una cella vuota risulta e passiamo al file successivo.
Quando ho finito di leggere tutti i file, vorrei eliminare le celle vuote di a
. Ho provato if a(i)==[]
per un leggero miglioramento in uso velocità 'emptyCells = cellfun ('IsEmpty', a);' '... cellfun' ha una' interruttore interno 'dichiarazione che controlla se la stringa è una delle poche funzioni che può fare un aumento di velocità" magico "con ... Questo è descritto qui: http://undocumentedmatlab.com/blog/cellfun-undocumented-performance -boost/ – JudoWill
+1 per specificare come eliminare le celle vuote! questo ti lascia con un array di celle contenente solo le voci non vuote! – Matteo