Select year in timetable
8 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
hi,i want to select year in Pr_anno using range in TR
anno=load('matlab_ANNO.mat')
tr=load('matlab_TR.mat')
PR_anno:
01/01/2024 -1.356250000000000e+03
01/01/2025 0
TR:
Starting at, including: 01-Sep-2024 00:00:00
Ending at, but excluding: 29-Nov-2024 00:00:00
The interval in TR is from 01-Sep-2024 00:00:00 to 29-Nov-2024 00:00:00 then i want to selet only 2024 (not 2025)
result:
01/01/2024 -1.356250000000000e+03
3 commentaires
Réponse acceptée
dpb
le 30 Nov 2024
Modifié(e) : dpb
le 30 Nov 2024
"How do I get the list of years in TR?"
A timerange object is opaque; there are no user functions to query one; it can only directly be used as a subscript into a timetable. Therefore, one has to go at it indirectly...
load('matlab_TR.mat')
S=struct(TR) % create a struct of the object's internals
yrsTR=year(S.first)
So, we query and dsplay the piece of interest in the struct to determine what the field names inside the object are and then extract the piece of data of interest.
"But I want to select the years in Pr_Year using the range of of Tr"
Create a new timerange with that year range--
TRyr=timerange(S.first,'years')
Note that even knowing the name of the TR object isn't enough--
TRyr=timerange(TR.first,'years')
fails. You're not allowed to ask the object itself and there are no associated methods to allow a direct query...that would seem to be a reasonable enhancement if TMW wouldn't want to go so far as to make the internals visible.
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Timetables dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!