Skip to main content

TREETS

treets stands for Time Restricted Eating ExperimenTS.

Install

pip install time_restricted_eating_experiments

Example for data analysis on the Columbia study

import treets.columbia as treetsc
import pandas as pd

Take a brief look on the food logging dataset and the reference information sheet

treetsc.read_logging_data('data/col_test_data').head(2)
<style scoped> .dataframe tbody tr th:only-of-type { vertical-align: middle; }
.dataframe tbody tr th {
    vertical-align: top;
}

.dataframe thead th {
    text-align: right;
}
</style>
Unnamed: 0 original_logtime desc_text food_type PID
0 0 2021-05-12 02:30:00 +0000 milk b yrt1999
1 1 2021-05-12 02:45:00 +0000 some medication m yrt1999
pd.read_excel('data/col_test_data/toy_data_17May2021.xlsx').head(2)
<style scoped> .dataframe tbody tr th:only-of-type { vertical-align: middle; }
.dataframe tbody tr th {
    vertical-align: top;
}

.dataframe thead th {
    text-align: right;
}
</style>
mCC_ID Participant_Study_ID Study Phase Intervention group (TRE or HABIT) Start_Day End_day Eating_Window_Start Eating_Window_End
0 yrt1999 2 S-REM TRE 2021-05-12 2021-05-14 00:00:00 23:59:00
1 yrt1999 2 T3-INT TRE 2021-05-15 2021-05-18 08:00:00 18:00:00

make the table that contains extra analytic information that we want

df = treetsc.make_table(treetsc.read_logging_data('data/col_test_data')\
                      , pd.read_excel('data/col_test_data/toy_data_17May2021.xlsx'))
Participant yrt1999 didn't log any food items in the following day(s):
2021-05-18
Participant yrt2000 didn't log any food items in the following day(s):
2021-05-12
2021-05-13
2021-05-14
2021-05-15
2021-05-16
2021-05-17
2021-05-18
Participant yrt1999 have bad logging day(s) in the following day(s):
2021-05-12
2021-05-15
Participant yrt1999 have bad window day(s) in the following day(s):
2021-05-15
2021-05-17
Participant yrt1999 have non adherent day(s) in the following day(s):
2021-05-12
2021-05-15
2021-05-17
df
<style scoped> .dataframe tbody tr th:only-of-type { vertical-align: middle; }
.dataframe tbody tr th {
    vertical-align: top;
}

.dataframe thead th {
    text-align: right;
}
</style>
mCC_ID Participant_Study_ID Study Phase Intervention group (TRE or HABIT) Start_Day End_day Eating_Window_Start Eating_Window_End phase_duration caloric_entries ... logging_day_counts %_logging_day_counts good_logging_days %_good_logging_days good_window_days %_good_window_days outside_window_days %_outside_window_days adherent_days %_adherent_days
0 yrt1999 2 S-REM TRE 2021-05-12 2021-05-14 00:00:00 23:59:00 3 days 7.0 ... 3.0 1.00 2.0 0.666667 3.0 1.00 0.0 0.0 2.0 0.666667
1 yrt1999 2 T3-INT TRE 2021-05-15 2021-05-18 08:00:00 18:00:00 4 days 8.0 ... 3.0 0.75 2.0 0.500000 1.0 0.25 2.0 0.5 1.0 0.250000
2 yrt2000 3 T3-INT TRE 2021-05-12 2021-05-14 08:00:00 16:00:00 3 days 0.0 ... 0.0 0.00 0.0 0.000000 0.0 0.00 0.0 0.0 0.0 0.000000
3 yrt2000 3 T3-INT TRE 2021-05-15 2021-05-18 08:00:00 16:00:00 4 days 0.0 ... 0.0 0.00 0.0 0.000000 0.0 0.00 0.0 0.0 0.0 0.000000
4 yrt2001 4 T12-A TRE NaT NaT NaN NaN NaT NaN ... NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN

5 rows × 26 columns

df.iloc[0]
mCC_ID                                           yrt1999
Participant_Study_ID                                   2
Study Phase                                        S-REM
Intervention group (TRE or HABIT)                    TRE
Start_Day                            2021-05-12 00:00:00
End_day                              2021-05-14 00:00:00
Eating_Window_Start                             00:00:00
Eating_Window_End                               23:59:00
phase_duration                           3 days 00:00:00
caloric_entries                                      7.0
mean_daily_eating_window                           13.75
std_daily_eating_window                        11.986972
earliest_entry                                       4.5
2.5%                                              4.5375
97.5%                                            27.5625
duration mid 95%                                  23.025
logging_day_counts                                   3.0
%_logging_day_counts                                 1.0
good_logging_days                                    2.0
%_good_logging_days                             0.666667
good_window_days                                     3.0
%_good_window_days                                   1.0
outside_window_days                                  0.0
%_outside_window_days                                0.0
adherent_days                                        2.0
%_adherent_days                                 0.666667
Name: 0, dtype: object
df.iloc[1]
mCC_ID                                           yrt1999
Participant_Study_ID                                   2
Study Phase                                       T3-INT
Intervention group (TRE or HABIT)                    TRE
Start_Day                            2021-05-15 00:00:00
End_day                              2021-05-18 00:00:00
Eating_Window_Start                             08:00:00
Eating_Window_End                               18:00:00
phase_duration                           4 days 00:00:00
caloric_entries                                      8.0
mean_daily_eating_window                        8.666667
std_daily_eating_window                         8.504901
earliest_entry                                       7.5
2.5%                                                 7.7
97.5%                                               23.9
duration mid 95%                                    16.2
logging_day_counts                                   3.0
%_logging_day_counts                                0.75
good_logging_days                                    2.0
%_good_logging_days                                  0.5
good_window_days                                     1.0
%_good_window_days                                  0.25
outside_window_days                                  2.0
%_outside_window_days                                0.5
adherent_days                                        1.0
%_adherent_days                                     0.25
Name: 1, dtype: object

Example for data analysis using time restricted eating experiments core module

import treets.core as treets
import pandas as pd

take a look at the original dataset

df = treets.file_loader('data/test_food_details.csv')
df.head(2)
<style scoped> .dataframe tbody tr th:only-of-type { vertical-align: middle; }
.dataframe tbody tr th {
    vertical-align: top;
}

.dataframe thead th {
    text-align: right;
}
</style>
Unnamed: 0 ID unique_code research_info_id desc_text food_type original_logtime foodimage_file_name
0 1340147 7572733 alqt14018795225 150 Water w 2017-12-08 17:30:00+00:00 NaN
1 1340148 411111 alqt14018795225 150 Coffee White b 2017-12-09 00:01:00+00:00 NaN

preprocess the data to have extra basic features

df = treets.load_public_data(df,4)
df.head(2)
<style scoped> .dataframe tbody tr th:only-of-type { vertical-align: middle; }
.dataframe tbody tr th {
    vertical-align: top;
}

.dataframe thead th {
    text-align: right;
}
</style>
Unnamed: 0 ID unique_code research_info_id desc_text food_type original_logtime original_logtime_notz date local_time time week_from_start year
0 1340147 7572733 alqt14018795225 150 Water w 2017-12-08 17:30:00+00:00 2017-12-08 17:30:00+00:00 2017-12-08 17.500000 17:30:00 1 2017
1 1340148 411111 alqt14018795225 150 Coffee White b 2017-12-09 00:01:00+00:00 2017-12-09 00:01:00+00:00 2017-12-08 24.016667 00:01:00 1 2017

do a brief annalysis

df = treets.summarize_data(df, 'unique_code', 'local_time', 'date')
df.head(2)
<style scoped> .dataframe tbody tr th:only-of-type { vertical-align: middle; }
.dataframe tbody tr th {
    vertical-align: top;
}

.dataframe thead th {
    text-align: right;
}
</style>
unique_code num_days num_total_items num_f_n_b num_medications num_water first_cal_avg first_cal_std last_cal_avg last_cal_std eating_win_avg eating_win_std good_logging_count first_cal variation (90%-10%) last_cal variation (90%-10%) 2.5% 95% duration mid 95%
0 alqt1148284857 13 149 96 19 34 7.821795 6.710717 23.485897 4.869082 15.664103 -1.841635 146 2.966667 9.666667 4.535000 26.813333 22.636667
1 alqt14018795225 64 488 484 3 1 7.525781 5.434563 25.858594 3.374839 18.332813 -2.059723 484 13.450000 3.100000 4.183333 27.438333 23.416667
df.iloc[0]
unique_code                      alqt1148284857
num_days                                     13
num_total_items                             149
num_f_n_b                                    96
num_medications                              19
num_water                                    34
first_cal_avg                          7.821795
first_cal_std                          6.710717
last_cal_avg                          23.485897
last_cal_std                           4.869082
eating_win_avg                        15.664103
eating_win_std                        -1.841635
good_logging_count                          146
first_cal variation (90%-10%)          2.966667
last_cal variation (90%-10%)           9.666667
2.5%                                      4.535
95%                                   26.813333
duration mid 95%                      22.636667
Name: 0, dtype: object
df.iloc[1]
unique_code                      alqt14018795225
num_days                                      64
num_total_items                              488
num_f_n_b                                    484
num_medications                                3
num_water                                      1
first_cal_avg                           7.525781
first_cal_std                           5.434563
last_cal_avg                           25.858594
last_cal_std                            3.374839
eating_win_avg                         18.332813
eating_win_std                         -2.059723
good_logging_count                           484
first_cal variation (90%-10%)              13.45
last_cal variation (90%-10%)                 3.1
2.5%                                    4.183333
95%                                    27.438333
duration mid 95%                       23.416667
Name: 1, dtype: object

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

treets-0.3.0.tar.gz (34.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

treets-0.3.0-py3-none-any.whl (147.8 kB view details)

Uploaded Python 3

File details

Details for the file treets-0.3.0.tar.gz.

File metadata

  • Download URL: treets-0.3.0.tar.gz
  • Upload date:
  • Size: 34.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.11.2 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8

File hashes

Hashes for treets-0.3.0.tar.gz
Algorithm Hash digest
SHA256 e92d8a9dc5ee7a0a8384f2fc950ce470375e8c1fc941498f6d817fb410a67135
MD5 fefa7b53bc876227c95851385d48a59c
BLAKE2b-256 de5ea04de93857115872645f9494306224b7f31aacd0756a22c3bf3dea350620

See more details on using hashes here.

File details

Details for the file treets-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: treets-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 147.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.11.2 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8

File hashes

Hashes for treets-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c733e5731f56bea1b57ca77af1fc82b8a65967d05cdec4a21101d8465d27e15f
MD5 5b4be072b8772d3d87345978dbfdd232
BLAKE2b-256 d20473a34ccf75b7b766284bb9f076cbc7cd7f9d52c8f84b464b4a6b904e73d0

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.5

2 files

1.0.4

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

This release

0.3.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page