Divide table in days and then in hours.

5 visualizzazioni (ultimi 30 giorni)
Erica Corradi
Erica Corradi il 16 Giu 2018
Commentato: Stephan il 26 Giu 2018
Hello everyone! I'm not very practical with matlab, so I hope that someone can help me. I have a big table [351496 x 5] that it contains 6 months of monitoring. Below the first five rows of my table.
The first column is the categorical variable (they are the name of my PIR sensors) the last column (ColumnDateTime) is the date time array. I want to divide my table for days, so as to create daily subtables. then, every daily subtable I would divide it by hours, creating 4 additional tables (which correspond to the times of the day: morning, afternoon, evening, night). Then I would like to analyze if there are 2 PIR sensors that detect movements in two different rooms (the different rooms are recognized in the first column, through the names of the sensors) in a time <= to 2 seconds. Thanks in advance.

Risposta accettata

Stephan
Stephan il 22 Giu 2018
Hi,
if you use a timetable for storing your data the function that might help you is
retime
With this function you can aggregate your data among other things. There are also examples given on the retime documentation site.
Best regards
Stephan
  6 Commenti
Erica Corradi
Erica Corradi il 26 Giu 2018
O my God!!!!! Thank you very much!!!! You solved my problem! The code works as I wanted!!Thanks thanks thanks. P.S.: sorry if I answer now, but only now I tried your code.
Stephan
Stephan il 26 Giu 2018
Nice to hear... have fun

Accedi per commentare.

Più risposte (1)

Razvan Carbunescu
Razvan Carbunescu il 26 Giu 2018
Depending on the final goal here could use some of the functionality within groupsummary (If using R2018a) and findgroups / splitapply models to help achieve some of the final modeling.
>> groupsummary(tab,'t',hours(6),'mean','values')
ans =
12×3 table
disc_t GroupCount mean_values
____________________________________________ __________ ___________
[01-Jun-2018 00:00:00, 01-Jun-2018 06:00:00) 6 58.833
[01-Jun-2018 06:00:00, 01-Jun-2018 12:00:00) 6 61.167
[01-Jun-2018 12:00:00, 01-Jun-2018 18:00:00) 6 41.167
[01-Jun-2018 18:00:00, 02-Jun-2018 00:00:00) 6 56.5
[02-Jun-2018 00:00:00, 02-Jun-2018 06:00:00) 6 59.667
[02-Jun-2018 06:00:00, 02-Jun-2018 12:00:00) 6 42.167
[02-Jun-2018 12:00:00, 02-Jun-2018 18:00:00) 6 50.333
[02-Jun-2018 18:00:00, 03-Jun-2018 00:00:00) 6 30.667
[03-Jun-2018 00:00:00, 03-Jun-2018 06:00:00) 6 40
[03-Jun-2018 06:00:00, 03-Jun-2018 12:00:00) 6 43.833
[03-Jun-2018 12:00:00, 03-Jun-2018 18:00:00) 6 69.333
[03-Jun-2018 18:00:00, 04-Jun-2018 00:00:00] 6 62.167

Categorie

Scopri di più su Data Type Identification 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