how to convert hours and minutes from decimals to datetime objects

31 ビュー (過去 30 日間)
Salma fathi
Salma fathi 2022 年 12 月 19 日
コメント済み: Salma fathi 2022 年 12 月 21 日
having as the follwing two columns from a table, the first column represents the year-month-day and the second column represent hours and minutes in decimal based on the equation (hour+min/60), how can I mrge the two columns to get at the end a full datetim object with the format
yyyy-MM-dd hh-mm?
thanks a lot in advance,


Peter Perkins
Peter Perkins 2022 年 12 月 19 日
Converting to string is totally unnecessary. Assuming the first variable in the table is already a datetime:
>> t = datetime(2008,05,07);
>> t + hours(15.9)
ans =
07-May-2008 15:54:00
If the first var is not a datetime, figure out why, and make it one. And probably make the table a timetable.

その他の回答 (1 件)

prasanth s
prasanth s 2022 年 12 月 19 日
First convert it into string type with the format "yyyy-MM-dd hh-mm" using
myDate=string("2008-05-07 ")+string(floor(hours_decimal))+"-"+string(60*(hours_decimal-floor(hours_decimal)))
convert to datetime object using using
t = datetime(myDate,'InputFormat','yyyy-MM-dd HH-mm')


Help Center および File ExchangeMATLAB についてさらに検索




Community Treasure Hunt

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

Start Hunting!

Translated by