How to delete empty rows from string arrays contained in a cell array?

7 visualizzazioni (ultimi 30 giorni)
I would need to delete empty strings contained in N x 1 string arrays (N is variable) which are contained in a cell array theirself.
mycellArray is a 3×1 cell array and is made up of string arrays of variable dimensions:
  • mycellArray{1} is a 49×1 string array
  • mycellArray{2} is a 22×1 string array
  • mycellArray{3} is a 35×1 string array
mycellArray{1} looks like:
How can I delete just the empty rows "" and let the written text?
Thanks in advance!

Risposta accettata

madhan ravi
madhan ravi il 10 Lug 2020
Modificato: madhan ravi il 10 Lug 2020
Wanted = arrayfun(@(y)cellfun(@(x) x(~(x=="")), c{y},'un', 0),1:numel(c)).' % c your cell array
  3 Commenti

Accedi per commentare.

Più risposte (1)

Arthur Roué
Arthur Roué il 10 Lug 2020
% Logical array, true when element in cell is empty
vb = cellfun(@isempty, MyCell)
% Remove empty element
MyCell = MyCell(~vb)
  2 Commenti
Davide Festa
Davide Festa il 10 Lug 2020
Thanks for your answer, but my purpose is to delete empty strings contained in each string array of the cell.
Your suggest is to delete empty cells, but I have no empty cell, just empty strings ("") within string arrays which are part of a cell array.
Hope to be clear.
Arthur Roué
Arthur Roué il 10 Lug 2020
Modificato: Arthur Roué il 10 Lug 2020
Oh, ok I misunderstood the problem.
I think you have your answer below :)

Accedi per commentare.

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by