Cell contents reference from a non-cell array object.
    7 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    mazari ahmed
 am 12 Mär. 2015
  
    
    
    
    
    Kommentiert: mazari ahmed
 am 9 Apr. 2015
             How to delete an element k in a cell array in a for loop? l have a set called neighbour_n{i} where i varies from 1 to n 
But it returns me this error :
??? Cell contents reference from a non-cell array object.
Error in ==> @(d)setxor([d{:}],[k])
Error in ==> broadcastelimination at 118 cellfun(fun, neighbour_n, 'UniformOutput', false)
neighbour_n=cell(N,1);
N = numel(neighbour_n);
for i=1:N
                 if (ismember(k, neighbour_n{i}));
                      idx = find(cell2mat(neighbour_n{i}) == k);
                       neighbour_n{i}(idx) = [];
                end
end
8 Kommentare
  Stephen23
      
      
 am 13 Mär. 2015
				
      Bearbeitet: Stephen23
      
      
 am 13 Mär. 2015
  
			I have no idea what "it doesn't delete the values" means.
This means if you still have values in the output that you do not expect to have then the you need to check that the input values are correct. If an element of A is not in B then it will be in the output.
And I note that the cyclist is also giving advice on your original question here:
Which is a good example of why I said at the start of this thread that you should not ask new questions about the same topic, but you should keep communicating on the same thread until the topic is resolved.
Akzeptierte Antwort
Weitere Antworten (1)
  Image Analyst
      
      
 am 13 Mär. 2015
        Not sure what's going on in your parallel discussion, but if you have a cell array called neighbour and you want to delete the k'th cell from that cell array, you can do this:
neighbour_n(k) = []; % Note parentheses, not braces.
You don't need to put it in a loop. See the FAQ: http://matlab.wikia.com/wiki/FAQ#What_is_a_cell_array.3F to get a better intuitive feeling for cell arrays.
3 Kommentare
  Image Analyst
      
      
 am 13 Mär. 2015
				Sorry - it's too late at night for me to delve into all that. I suggest you keep at it with your original thread.
Siehe auch
Kategorien
				Mehr zu Data Type Identification finden Sie in Help Center und File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!