How do I read data from just first row of the cell
    31 views (last 30 days)
  
       Show older comments
    
    Bajdar Nour
 on 17 Aug 2018
  
    
    
    
    
    Answered: Adusumilli Bala Surendra
      
 on 24 Apr 2019
            
this is the 3x50 cell
4 Comments
  Image Analyst
      
      
 on 17 Aug 2018
				madhan, no. Just try it and see
for row = 1 : 3
  for col = 1 : 50
    ca{row, col} = rand(1, 4);
  end
end
row1 = ca(1,:) % Correct.
row1 = ca{1,:} % Incorrect.
The first way gives the entire row while the braces way gives only the first cell of the first row. See the FAQ on cell arrays.
Accepted Answer
  Image Analyst
      
      
 on 17 Aug 2018
        Bajdar, just specify 1 for the first index of the cell array feature_vec.
array17 = feature_vec{1, 7} % Get array contained in row 1, column 7 of the cell array.
If you want all the arrays in all the cells of row 1, then you can do:
row1 = feature_vec(1,:) % row1 is another cell array - a row vector cell array.
Here row1 is a cell array that is a row vector of 50 cells. Each of those 50 cells contains a double array. To get any particular array in a specified column, use braces. For example to get the cell in the 8th column, do
cellContents18 = row1{8}; % Contents of the 8th cell will be a double array.
If you don't understand when to use braces (to refer to contents of the cell) and parentheses (to refer to the cells themselves), then see <https://matlab.wikia.com/wiki/FAQ#What_is_a_cell_array.3F the FAQ on cell arrays.) Don't worry - granted, it's a very tricky and confusing thing that is hard for a lot of people to grasp.
5 Comments
  Image Analyst
      
      
 on 20 Aug 2018
				I don't see any reason to save/store all the images. Why are you doing that? Just process them in the loop and be done with that image.
More Answers (2)
  Yuvaraj Venkataswamy
      
 on 17 Aug 2018
        
      Edited: Yuvaraj Venkataswamy
      
 on 17 Aug 2018
  
      if true
 feature_vec{1,:}
end
2 Comments
  Adusumilli Bala Surendra
      
 on 24 Apr 2019
        The following can help you. Try this.
z =
  1×3 cell array
    {3×3 double}    {3×3 double}    {3×3 double}
>> z{1}
ans =
      0.00315 +   0.011925i    0.0008042 +  0.0071843i    0.0008042 +  0.0061306i
    0.0008042 +  0.0071843i      0.00315 +   0.011925i    0.0008042 +  0.0065829i
    0.0008042 +  0.0061306i    0.0008042 +  0.0065829i      0.00315 +   0.011925i
>> z{1}(1,:)
ans =
      0.00315 +   0.011925i    0.0008042 +  0.0071843i    0.0008042 +  0.0061306i
0 Comments
See Also
Categories
				Find more on Matrix Indexing in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!