How can I find out some specific dates from two date lists?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Ashfaq Ahmed
le 8 Juin 2023
Commenté : Ashfaq Ahmed
le 8 Juin 2023
Hi, I have two date lists. DateList1.m contains dates from 1984 to 2022 (with many gaps) and DateList2.m constains dates from 2005 to 2019 (with no gap). I want to make a table that contains all temperature data between 9:00 am to 11:00 am from DateList2.m but those specific dates need to be in dateList1.m as well.
Can anyone please suggest how to code this problem? Any feedback will be much appreciated!
0 commentaires
Réponse acceptée
Cris LaPierre
le 8 Juin 2023
You have date information in DateList1, and date+time information in DateList2.
I would add a column to DateList2 that is just the date. You might find the dateshift function helpful for this. Then I could use ismember to find which dates in DateList2 are in DateList1. At the sime time, you could check that the day time is between 9 and 11 am. Use the hour function with the corresponding relational operators.
4 commentaires
Cris LaPierre
le 8 Juin 2023
load DateList1.mat
load DateList2.mat
DateList2.date = dateshift(DateList2.Time, 'start', 'day');
% Find days that in DateList2 that are also in DateList1
ind = ismember(DateList2.date,DateList1.date) ...
& hour(DateList2.Time) >= 9 ...
& hour(DateList2.Time) < 11;
T = DateList2(ind,:);
dayAvg = groupsummary(T,"Time",'day','mean','Var1')
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Dates and Time 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!