how to access elements of a vector inside a cell array
    6 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
    Chiara Scarpellini
 am 11 Aug. 2021
  
    
    
    
    
    Bearbeitet: Dave B
    
 am 11 Aug. 2021
            I need to access with a for loop all the elements of SimulatedPoints but I struggle with finding the notation. This is what I did but it returns the entire vector of the cell.
for j=1:length(SimulatedPoints.Codes{idxRow,:})
        end 

1 Kommentar
Akzeptierte Antwort
  Dave B
    
 am 11 Aug. 2021
        The length part should return the entire contents of the cell, so your code looks fine to me. Inside the loop you'd refer to the individual elements of the cell:
name=["a";"b"];
codes=[{rand(3,1);rand(5,1)}];
t=table(name,codes)
row = 2;
for i = 1:length(t.codes{row})
    disp(t.codes{row}(i))
end
2 Kommentare
  Stephen23
      
      
 am 11 Aug. 2021
				"The length part should return the entire contents of the cell"
What cell array?
Is your answer finally an official TMW announcement that cell arrays andf tables really are one and the same?
  Dave B
    
 am 11 Aug. 2021
				
      Bearbeitet: Dave B
    
 am 11 Aug. 2021
  
			@Stephen Cobeldick - My answer is an offical TMW announcement of anything, I just jump on answers sometimes to help out when I'm not too busy. But personally, I certainly don't think of tables and cell arrays as the same, they seem quite different in many regards (although you can convert between them quite easily). I didn't mean to jump into something controversial.
In this example there's clearly a cell, you can see it in the disp, and isa(t.codes(2),'cell') returns true. So t.codes{row} returns the contents of the cell t.codes(row), right? 
Weitere Antworten (0)
Siehe auch
Kategorien
				Mehr zu Logical 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!


