How to show the values are constant inside a cell array
    1 view (last 30 days)
  
       Show older comments
    
Hi,
I have a cell array that is 4x6. Inside each cell I have 1x31 values.
I am studying the change of my variables in time. Thus, for a t_length=31 (31 values in each cell), I would like to show whether in each cell the values are or not constant.
Could you please help me with it?
0 Comments
Answers (1)
  dpb
      
      
 on 12 Sep 2018
        Presuming interpreted the meaning of "constant" in each cell,
>> c{:}                   % small demo cell array first,last constant, other two alike 
ans =
     3     3     3     3
ans =
     1     2     3     4
ans =
     1     2     3     4
ans =
    3.1416    3.1416    3.1416    3.1416
>> cellfun(@(x) all(x==x(1)),c)
ans =
  2×2 logical array
   1   0
   0   1
>>
returns locations in the cell array that all are constant (every value in the vector in the cell are the same).
If the Q? is which cells are equal to each other, that's a "compare one to every other" combinational thing.
2 Comments
  dpb
      
      
 on 13 Sep 2018
				You're talking about subsections within these vectors that are constant? Is that anywhere within them that diff() two or more points is zero or what other definition is "constant"? What about
v=[0 1 2 2 1 1 2 2 3 4 ...
? What is desired output or what are constraints on inputs?
See Also
Categories
				Find more on Logical 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!
