datenum(ye​ar,month,d​ay,hr) that returns integer

2 visualizzazioni (ultimi 30 giorni)

I need a datenum(year,month,day,hr) that returns an integer, where year, month, day, and hr are vectors of integers.
motivation: I am trying to do this for fast lookup of many dates in a large table, where each row contains data for an hourly sample. Therefor the output of datnum will become the indices of a sparse matrix containing the row indices of the original table of data.

Risposta accettata

dpb
dpb il 13 Mag 2022
Wrong approach.
Instead, convert the table to a timetable; there are direct, builtin functions to return by rowtimes either individual records or those matching a time span, etc., ...
  2 Commenti
dpb
dpb il 13 Mag 2022
Addendum -- are the table entries complete? If so, then it's simply hours(tWanted-tZero) + 1 where tWanted is the desired hour and tZero is the origin of the table using the datetime class.
Otherwise, I think the other idea is still the better solution.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Dates and Time in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by