Check if cell contains another cell
    6 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Marc Laub
 el 20 de Oct. de 2022
  
    
    
    
    
    Comentada: Jiri Hajek
      
 el 21 de Oct. de 2022
            Hey,
I need to check if my cell contains another cell or if the contant is a character vector.
So I got a 
a=1x130 cell
and 
a{1}='1-v1';
a{2}='.*'
a{3}='3+v2'
a{4}=1x3 cell
...
So e need to check wether the cell content is a character vector like a{1} or a{3}, contains an operater such as a{2}, or a cell itsself with the same structure as a
Then I wanna 
eval('(1-v1).*(3+v2)')
So with 
ischar
I can check wether its  .* or an character arry, but how do I check if its a subcell, to call the fiunction recursive?
Best regards
0 comentarios
Respuesta aceptada
  the cyclist
      
      
 el 20 de Oct. de 2022
        a{1}='1-v1';
a{2}='.*';
a{3}='3+v2';
a{4}={'this is a cell'};
cellfun(@iscell,a)
5 comentarios
  the cyclist
      
      
 el 20 de Oct. de 2022
				
      Editada: the cyclist
      
      
 el 20 de Oct. de 2022
  
			The image really isn't enough. I can't run the following code -- which exposes the fact the first cell really does contain another cell -- on your image.
load(websave("segs","https://www.mathworks.com/matlabcentral/answers/uploaded_files/1163423/testdata.mat"),"segs");
segs(1)
segs{1}
segs{1}{1}
segs(2)
segs{2}
I think you were getting fooled by the fact that the Variable Editor interface seems to look inside 1x1 cells.
Más respuestas (1)
  Jiri Hajek
      
 el 20 de Oct. de 2022
        Hi,
you can use the isa function:
isa(a{i},'cell')
Note that the use of eval is not recommended for many a good reason... 
2 comentarios
  Jiri Hajek
      
 el 21 de Oct. de 2022
				I believe you have got your answer already, as the cyclist pointed out the fact that variable viewer is not a reliable way to check the class of data, rather a viewer that helps you to analyze data. And we can trust the isa/iscell commands, which is not really surprising, considering how long they have been a part of MATLAB...
Ver también
Categorías
				Más información sobre Matrix Indexing en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




