Find min and max datetime in table

19 views (last 30 days)
Frederick Awuah-Gyasi
Frederick Awuah-Gyasi on 19 May 2022
Commented: Voss on 19 May 2022
table
A , Datetime,
2 05/20/22
2 05/20/23
3 04/12/99
3 06/12/02
the goal is to have two more columns with min and max dates
table
A , Datetime, Min, Max
2 05/2/22 05/2/22 05/2/23
2 05/2/23 05/2/22 05/2/23
3 04/12/01 04/12/01 06/12/02
3 06/12/02 04/12/01 06/12/02
I was tring table_min = groupsummary (table,{table.A,table.Datetime}, 'min'}
table_max= groupsummary (table,{table.A,table.Datetime}, 'max'}
So I join this date to table but i'm getting an error :
[groupingData,groupVars] = matlab.internal.math.parseGroupVars(groupVars,tableFlag,'groupsummary',T);
Thank you.

Accepted Answer

Voss
Voss on 19 May 2022
T = table( ...
[2;2;3;3], ...
datetime({'05/20/22';'05/20/23';'04/12/99';'06/12/02'},'InputFormat','MM/dd/yy'), ...
'VariableNames',{'A' 'Datetime'})
T = 4×2 table
A Datetime _ ___________ 2 20-May-2022 2 20-May-2023 3 12-Apr-1999 3 12-Jun-2002
table_min = groupsummary (T, 'A', 'min')
table_min = 2×3 table
A GroupCount min_Datetime _ __________ ____________ 2 2 20-May-2022 3 2 12-Apr-1999
table_max = groupsummary (T, 'A', 'max')
table_max = 2×3 table
A GroupCount max_Datetime _ __________ ____________ 2 2 20-May-2023 3 2 12-Jun-2002
g = findgroups(T.A)
g = 4×1
1 1 2 2
T.Min = table_min{g,'min_Datetime'};
T.Max = table_max{g,'max_Datetime'};
T
T = 4×4 table
A Datetime Min Max _ ___________ ___________ ___________ 2 20-May-2022 20-May-2022 20-May-2023 2 20-May-2023 20-May-2022 20-May-2023 3 12-Apr-1999 12-Apr-1999 12-Jun-2002 3 12-Jun-2002 12-Apr-1999 12-Jun-2002

More Answers (0)

Community Treasure Hunt

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

Start Hunting!