Return index of datetime column in a table

2 ビュー (過去 30 日間)
Sonima
Sonima 2019 年 8 月 26 日
編集済み: Sonima 2019 年 8 月 27 日
Hi!
I have a very long table which I want to return index to specific raws.
>> head(HData)
Time
_____________________
'2019.08.22 12:00:00'
'2019.08.22 12:15:00'
'2019.08.22 12:30:00'
I want to return in dex for the raws
'2019.08.22 12:00:00'
Thanks.
  1 件のコメント
Ted Shultz
Ted Shultz 2019 年 8 月 26 日
is the time variable a matlab datetime number, or is it a string? This will use much less data, and be easier to work with if it was a datetime.
it usualy isn't too much work to convert strings to datetime arrays.

サインインしてコメントする。

採用された回答

Akira Agata
Akira Agata 2019 年 8 月 27 日
If your HData.Time column is string:
% index of zero seconds
idx_s = cellfun(@(x) ~isempty(x),regexp(HData.Time,'00$','match'));
% index of zero minutes
idx_m = cellfun(@(x) ~isempty(x),regexp(HData.Time,':00:','match'));
Or, if your HData.Time column is datetime, it becomes much simpler, like:
% index of zero seconds
idx_s = HData.Time.Second == 0;
% index of zero minutes
idx_m = HData.Time.Minute == 0;

その他の回答 (0 件)

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by