Info

Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.

??? Index exceeds matrix dimensions. Error in ==> Untitled at 267 if length(W{i})==0;

1 Ansicht (letzte 30 Tage)
Tomas
Tomas am 1 Dez. 2013
Geschlossen: MATLAB Answer Bot am 20 Aug. 2021
{1x3 cell} {1x2 cell} {1x4 cell}
W{2}{1}={[1 2],[],[2 5 3]}
for i=1:size(W,2)
if length(W{i})==0;
W(cellfun('isempty',W))=[];%odstranenie prazdnych miest
else
%zmaze prazdne miesta v poli
W{i}(cellfun(@isempty,W{i})) = [];
end
end
W
I want to delete empty place in cell,2 events may occur once Z ={1x3 cell} [] {1x2 cell} [] {1x4 cell} or can be Z{1}= [1x3 double] [1x3 double] [1x3 double] [] []
Thanks.

Antworten (1)

Azzi Abdelmalek
Azzi Abdelmalek am 1 Dez. 2013
Try this
idx=cellfun(@isempty,W{2}{1});
W{2}{1}(idx)=[]
  5 Kommentare
Azzi Abdelmalek
Azzi Abdelmalek am 1 Dez. 2013
I will give an example
W{1}{1}={[] 1:3 3:5 1:3 [] }
W{2}{1}={[] [] 1:3 1:3 }
idx=cellfun(@isempty,W{2}{1});W{2}{1}(idx)=[]
celldisp(W{2})
Tomas
Tomas am 1 Dez. 2013
i need when i have Z=[] {1x3 cell} {1x2 cell} i want to delete [] if length(Z(1))==0 error message
? Undefined function or method 'eq' for input arguments of type 'cell'.

Diese Frage ist geschlossen.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by