How can I apply if else statement to exclude dates?

4 vues (au cours des 30 derniers jours)
Nuria Andreu
Nuria Andreu le 9 Juin 2021
Commenté : Nuria Andreu le 15 Juin 2021
I have many data files with dates ranging from the 1800s to 2021. I only need dates from 1/1/1940 to 12/31/2020. I need to maintain the data file as untouched as possible (this is why I did not delete the extra dates). Can anyone help me with this code?
I appreciate the help!
Thank you!

Réponse acceptée

ytzhak goussha
ytzhak goussha le 10 Juin 2021
if vec is your date string vector:
vec = ["12/31/2020";"12/30/2020";"12/29/2020"]
then you must first convert it to date class:
date_vec = datetime(vec,'InputFormat','MM/dd/yyyy')
this will give the output:
date_vec =
3×1 datetime array
31-Dec-2020
30-Dec-2020
29-Dec-2020
and then you can either get a logical array with your condition:
upper_limit = datetime("12/31/2020",'InputFormat','MM/dd/yyyy');
lower_limit = datetime("12/30/2020",'InputFormat','MM/dd/yyyy')
logical array = (date_vec>lower_limit&date_vec<upper_limit)
or you can do if else statements
if this_date > upper_limit
else
end

Plus de réponses (0)

Catégories

En savoir plus sur Dates and Time dans Help Center et File Exchange

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by