How to select specific row in a matrix
    5 views (last 30 days)
  
       Show older comments
    
i have data like
                     doy          time           aod
                     5           05:46:46  0.62800    
                     5           05:46:56  0.62100
                     5           05:47:07  0.61600
                     7           06:47:06  0.53600
                     7           06:47:16  0.53200
                     7           06:47:27  0.53500
                    11           08:31:35  0.64000
                    11           08:31:46  0.63400
                    11           08:31:57  0.62600
and i want this data like(for minimum aod in group)
                    5           05:47:07  0.61600
                    7           06:47:16  0.53200 
                    11           08:31:57  0.62600
2 Comments
Answers (1)
  Akira Agata
    
      
 on 20 Mar 2018
        Assuming your data is stored in table format, say T, the following code can do that.
func = @(x) T(T.aod == min(x),:);
Tout = splitapply(func,T.aod,findgroups(T.doy));
The result is like this:
>> Tout
Tout =
3×3 table
  doy      time       aod 
  ___    ________    _____
   5     05:47:07    0.616
   7     06:47:16    0.532
  11     08:31:57    0.626
3 Comments
  Akira Agata
    
      
 on 21 Mar 2018
				x is an input variable of an 'anonymous function'. Please visit the following link for more details.
See Also
Categories
				Find more on Propagation and Channel Models 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!