Is there a command to index months in a timetable series?
I would like to index one long term timetable in two ways. In one, all July, August, and September are indexed. In the second Novemeber through March are indexed.
My timetable is a daily series.

 Réponse acceptée

Adam Danz
Adam Danz le 23 Sep 2020
Modifié(e) : Adam Danz le 23 Sep 2020

0 votes

Logical index of rows that are in July,Aug,Sept.
idx = ismember(month(TT2_staLCA_WS.Time),[7,8,9]);

4 commentaires

Eric Escoto
Eric Escoto le 23 Sep 2020
Modifié(e) : Eric Escoto le 23 Sep 2020
Nice. So this provides the logical array. What is the next step to pull those values (meaning the data and Time columns) into a new TT? Is it an 'if' statement?
It's just basic indexing.
For example,
T = table((1:5)',["A";"B";"C";"D";"E"])
% T =
% 5×2 table
% Var1 Var2
% ____ ____
% 1 "A"
% 2 "B"
% 3 "C"
% 4 "D"
% 5 "E"
idx = ismember(T.Var1, [1,3,4]) % rows where var1 is 1,3,or 4
% idx =
% 5×1 logical array
% 1
% 0
% 1
% 1
% 0
% EXAMPLES OF INDEXING
T(idx,:)
% 3×2 table
% Var1 Var2
% ____ ____
% 1 "A"
% 3 "C"
% 4 "D"
T.Var2(idx)
% 3×1 string array
% "A"
% "C"
% "D"
Eric Escoto
Eric Escoto le 23 Sep 2020
Ah of course. Perfect.
Thanks, Adam!
Adam Danz
Adam Danz le 23 Sep 2020
Socially distant high-five!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrices and Arrays dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by