Azzera filtri
Azzera filtri

how to filter data by date?

2 visualizzazioni (ultimi 30 giorni)
Manny
Manny il 4 Mar 2024
Risposto: Steven Lord il 4 Mar 2024
hi everyone
I am trying to filter records by date. I am getting error. How do I fix it?
Code:
Data = convertvars(Data, 2, @(x) datetime(x, 'InputFormat', 'yyyy-MM-dd'));
FilteredDataRealizedVol = Data(:,["TRADE_DATE","REALIZED_VOLATILITY"]);
FilteredDataRealizedVol = FilteredDataRealizedVol(FilteredDataRealizedVol(:,1) <= datetime(2016,7,18),:);
FilteredDataRealizedVol = FilteredDataRealizedVol(FilteredDataRealizedVol(:,1) >= datetime(1928,1,27),:);
Error:
Error using <=
This operation is not defined between 'table' and 'datetime'. The input that is not a table or timetable must be a numeric or
logical array.
Error in LinearRegression (line 26)
FilteredDataRealizedVol = FilteredDataRealizedVol(FilteredDataRealizedVol(:,1) <= datetime(2016,7,18),:);
Thank you

Risposta accettata

Walter Roberson
Walter Roberson il 4 Mar 2024
FilteredDataRealizedVol = FilteredDataRealizedVol(FilteredDataRealizedVol{:,1} <= datetime(2016,7,18),:);
  5 Commenti
Manny
Manny il 4 Mar 2024
i did put the {} but still not working:
FilteredDataRealizedVol = FilteredDataRealizedVol(FilteredDataRealizedVol{:,1} <= datetime(2016,7,18),:);
FilteredDataRealizedVol = FilteredDataRealizedVol(FilteredDataRealizedVol{:,1} >= datetime(1928,1,27),:);
Manny
Manny il 4 Mar 2024
i figured it out now.
the problem was in another part of the code that was referencing the unfiltered data.
thank you everyone for your help!

Accedi per commentare.

Più risposte (1)

Steven Lord
Steven Lord il 4 Mar 2024
Use a timerange to index into the timetable.

Categorie

Scopri di più su Preprocessing Data in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by