load(websave('data.mat','https://www.mathworks.com/matlabcentral/answers/uploaded_files/1148080/data.mat'))
rule=-1*double(second(ttD.ChunkEnd)==0);
ttD.ChunkEnd=dateshift(ttD.ChunkEnd,'end','minute',rule);
newt=datetime(ttD.ChunkEnd(1):days(1):ttD.ChunkEnd(end));
ttD=retime(ttD,newt)
ttD =
ChunkEnd podN DPM Nall MinsOn FalsePositiveDPM
____________________ ____ ___ __________ ______ ________________
12-Nov-2017 23:59:00 2714 7 1756 1440 0
13-Nov-2017 23:59:00 2714 16 11348 1440 0
14-Nov-2017 23:59:00 2714 0 3310 1440 0
15-Nov-2017 23:59:00 NaN NaN NaN NaN NaN
16-Nov-2017 23:59:00 1533 0 32098 1440 0
17-Nov-2017 23:59:00 1533 0 48293 1440 3
18-Nov-2017 23:59:00 1533 0 3.4973e+05 1440 0
19-Nov-2017 23:59:00 1533 0 18702 1440 0
The above is a little esoteric with the use of the secondary rule argument and the logic test to set it so would not turn 23:59 into 24:00 and then 00:00 of the next day, granted, but figured may as well demonstrate a corner feature of retime while at it and had the opportunity.
One might just use regular timing and round to the next day since all are so near midnight; that's a decision the data owner has to decide about which date to report on.