How to select specific row in a matrix

3 visualizzazioni (ultimi 30 giorni)
AKHILESH KUMAR
AKHILESH KUMAR il 19 Mar 2018
Commentato: Akira Agata il 21 Mar 2018
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 Commenti
James Tursa
James Tursa il 19 Mar 2018
How do you currently have the data stored? In a table variable? Or ...?
AKHILESH KUMAR
AKHILESH KUMAR il 20 Mar 2018
data are stored in table

Accedi per commentare.

Risposte (1)

Akira Agata
Akira Agata il 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 Commenti
AKHILESH KUMAR
AKHILESH KUMAR il 20 Mar 2018
what is x and in MATLAB time, aod ,doy are string.
Akira Agata
Akira Agata il 21 Mar 2018
x is an input variable of an 'anonymous function'. Please visit the following link for more details.

Accedi per commentare.

Categorie

Scopri di più su Tables in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by