Commit Graph

447 Commits (9f441afc16ff9b75e131eb47d41edb570b51190c)

Author SHA1 Message Date
= 74cf4ada1c Cr-feat window length for all empaticas sensors. 2022-04-12 14:00:44 +00:00
junos d326a1b09d Include the constant directly in main.py. 2022-04-05 19:08:43 +02:00
junos 2e545e81f0 Include feature calculations for different scales. 2022-04-05 19:05:34 +02:00
junos cbc8ae4e03 Add necessary checks for empty data frames. 2022-04-05 18:58:09 +02:00
junos 751b04f3f4 Pass scale names to Snakemake correctly. 2022-04-05 18:14:37 +02:00
junos 99245afca3 Try a different approach for preprocessing ESMs.
It is important that this follows generic RAPIDS pattern.
In the subsequent step of calculating features,
there is an expected file and folder structure of data/interim.
See rules/common.smk/find_features_files()
2022-04-05 18:02:31 +02:00
junos ed298a9479 Implement the basic feature extraction steps. 2022-04-05 15:46:02 +02:00
Primoz c050174ca3 Various minimal changes. 2022-03-31 09:16:00 +00:00
Primoz a357138f6e Added CF for HRV and shortened test data 2022-03-30 15:01:24 +00:00
Primoz 470993eeb0 Modification of getSampleRate method for all CF scripts. 2022-03-30 15:00:11 +00:00
junos 3af8de6235 Create feature provider script. 2022-03-30 10:40:53 +02:00
junos 9478dc94f2 Add an else.
This is to make sure that in case the reversing fails, we do not get any output items.
Snakemake will inform us of an error in this event.
2022-03-30 10:40:53 +02:00
= ab0b9227d7 Added ACC calculated features and shorter version of ACC data. 2022-03-29 09:41:51 +00:00
= a9244a60fc Corrections for TEMP cf src script. 2022-03-28 14:26:37 +00:00
= 8b76c96e47 Cleaning existing CF mains' and preparing src script for ACC. 2022-03-28 14:18:29 +00:00
= ca59a54d8f Get a sample rate from two sequential timestamps. 2022-03-28 13:50:08 +00:00
= 393dab72f5 Added components for the temperature features extraction. 2022-03-28 12:37:02 +00:00
Primoz f389ac9d89 Delete CF features folder 2022-03-25 16:24:52 +00:00
Primoz 191e53e543 Added cf provider for EDA feature processing. 2022-03-23 15:13:53 +00:00
Primoz 2da0911d4c Skeleton file main.py for EDA CalcFt. integration. 2022-03-22 12:48:43 +00:00
junos c6144f8403 Reverse JCQ items. 2022-03-16 18:55:46 +01:00
junos 23f0aaba3a Get the name of the questionnaire from Snakefile. 2022-03-16 18:28:57 +01:00
junos 679f00dc19 Enable selecting any questionnaire as target. 2022-03-16 17:55:44 +01:00
junos 1374eda171 Flatten questionnaire ID dict. 2022-03-16 17:38:09 +01:00
junos 19b9da0ba3 Separate function definitions from main. 2022-03-16 16:49:28 +01:00
junos ef57103bac Add questionnaire ID key. 2022-03-15 13:41:33 +01:00
junos 5f293211a7 Reformat. 2022-03-15 13:28:51 +01:00
junos d470eef27e Add a rule to preprocess and clean ESM. 2022-03-09 18:38:46 +01:00
junos 085a6d144b Add files to compute and create an empty script. 2022-03-09 17:32:02 +01:00
Sam e5dbbfce44
Avoid NA problem in barnett location evaluation (#172)
* Avoid occasional issue where does_not_span evaluates to NA, which breaks the if()

* Restored original warning
2022-01-18 10:16:37 -05:00
Meng Li 5bad3eb8b5
Data cleaning (#166)
* Refactor data cleaning module: move it from example workflow to main directory

* Replace NAs with 0 in selected event-based features

* Add one step to drop highly correlated features

Co-authored-by: Weiyu <weiyuhuang7@gmail.com>
2021-11-19 10:34:36 -05:00
Meng Li 296960f425 Fix the bug of location doryab features when a participant is moving during the whole time segment 2021-11-18 18:42:19 -05:00
Meng Li 3d34036eae
Add firststeptime and laststeptime features to FITBIT_STEPS_INTRADAY RAPIDS provider (#168)
* Add firststeptime and laststeptime features to FITBIT_STEPS_INTRADAY RAPIDS provider

* Update test config files
2021-11-18 18:35:27 -05:00
Meng Li f340b89c58 Temporary revert PHONE_LOCATIONS BARNETT provider to use R script 2021-09-23 18:16:13 -04:00
Meng Li a3fb718aea Refactor PHONE_LOCATIONS DORYAB provider to compute features based on location episodes 2021-09-23 17:40:06 -04:00
Meng Li a8a178486b Refactor PHONE_CALLS RAPIDS provider to compute features based on call episodes or events 2021-09-15 10:28:37 -04:00
JulioV 2e553dc9e7 Add tqdm package to environment.yaml 2021-08-16 11:04:03 -04:00
Meng Li 3ac12e7dad Fix the bug of step intraday features when INCLUDE_ZERO_STEP_ROWS is False 2021-08-11 12:40:40 -04:00
Weiyu 35eebe8a51 Bug fixed: set ratiovalidyielded mins/hours value to the range 0 to 1 2021-08-09 17:56:29 -04:00
JulioV 3e69966c91 Update error message 2021-08-04 15:33:02 -04:00
Shirley 4ddb2845a6 Update initialize_params 2021-08-04 15:33:02 -04:00
JulioV 834bd3b93d Refactor in Python of Barnett provider
Co-authored-by: Shirley Hayati <sahayati@ucdavis.edu>
Co-authored-by: JulioV <JulioV@users.noreply.github.com>
2021-08-04 15:33:02 -04:00
Weiyu 7f1c502ea0 Fixed bug: Added local_segment column if no data left after filtered 2021-08-04 11:06:31 -04:00
Hannah Roberts b52059b027 Ensure date/time format is maintained
Within the 'determine which is home' for loop, 'xx' is the midpoint of two datetime objects. When the midpoint is calculated to be midnight, only the date is returned. This can be replicated with:

mydates <- as.POSIXct("2018-01-01 00:00:00", tz = "UTC")
mydates
[1] "2018-01-01 UTC"

This results in 'hourofday' being NA as an hour cannot be found. By adding the suggested format wrapper, the time is maintained and 'hourofday' can be determined. It can then successfully be applied to the embedded if-statement within the loop.

mydates <- format(as.POSIXct("2018-01-01 00:00:00", tz = "UTC"), "%Y-%m-%d %H:%M:%S")
mydates
[1] "01-01-2018 00:00:00"
2021-07-23 10:12:11 -04:00
Weiyu 5a465873c4 Tested fitbit heartrate intraday feature 2021-07-21 10:24:02 -04:00
JulioV 6fa1875bf3 Add app foreground episode count 2021-07-01 16:20:16 -04:00
JulioV bc5c0c9a4f Fix app episode length bug 2021-07-01 16:20:16 -04:00
JulioV 065a926a87 Change own to custom categories name 2021-07-01 16:20:16 -04:00
JulioV e74c745f86 Add own categories to app foreground features 2021-07-01 16:20:16 -04:00
Meng Li 1c57320ab3 Update segment labels and fix the bug when we do not have any labels for event segments 2021-06-29 09:49:24 -04:00
Weiyu 3e4d167adc Bug fixed: sort bt_address alphabetically before picking the most frequent bt_address 2021-06-22 17:40:00 -04:00
kirtirajk 4b8698a4c6 adding app_episode with the changes as mentioned in the comments 2021-06-10 14:17:56 -04:00
Weiyu 65d5cb7bd4 Bug fixed: countscansmostuniquedevice stays the same for all time segments 2021-06-10 10:49:22 -04:00
Meng Li 9687081fbe Refactor the rule phone_locations_add_doryab_extra_columns 2021-05-28 09:48:36 -04:00
Meng Li 0d6f51be8b Refactor location features from Doryab provider & add a new strategy to infer home location & fix bugs 2021-05-26 17:36:52 -04:00
Nikunj Goel 9b21196f35
Fixed `expected_minutes` to account for different time segments. (#136) 2021-05-26 11:44:48 -04:00
Nikunj Goel 5e451f99b0
Added phone keyboard features including docs/tests (#134) 2021-05-21 11:45:27 -04:00
JulioV e9cd9c94d7 Fix PID matching when joining data from participants 2021-05-11 16:49:04 -04:00
Meng Li 809845143f Test & fix bugs of sleep intraday features 2021-04-27 14:40:14 -04:00
Meng Li 7c7f34ec45 Test & fix bugs of sleep summary features 2021-04-27 14:40:14 -04:00
Meng Li 66d9a9d640 Update params & docs of sleep features 2021-04-27 14:33:19 -04:00
JulioV 9c56422529 Add calories intraday features 2021-04-20 12:00:38 -04:00
Meng Li 00a3335623 Add device_id column for sleep intraday episodes 2021-04-08 11:21:28 -04:00
Meng Li 8909876cff Add local_segment column for phone data yield features 2021-04-05 21:13:36 +00:00
Meng Li 68125dc1bf Fix the bug of phone data yield features when the input is empty 2021-04-05 20:57:05 +00:00
JulioV 636b64c61a Revert "Added more keyboard features."
This reverts commit 94c72e3172.
2021-04-05 11:25:00 -04:00
Meng Li 68e12a2563 Fix bugs of bluetooth feature extraction when number of unique bt_address is 2 2021-04-05 14:09:50 +00:00
Meng Li 8414977331 Fix the bug of utils.py when one participant have multi timezones 2021-04-03 21:20:10 -04:00
nikunjgoel95 94c72e3172 Added more keyboard features. 2021-04-01 20:54:13 -04:00
Meng Li 1ea5b74eff Fix the bug of utils.py when one participant have multi timezones 2021-03-31 19:34:14 -04:00
JulioV c48c1c8f24 Optimize Barnett's computation multi-day segments 2021-03-28 15:29:07 -04:00
JulioV d0858f8833 Fix overlapping periodic time segments 2021-03-28 15:29:07 -04:00
nikunjgoel95 cfc5039918 Fixed the empty dataframe case in infer_home_locations.py and added array condition in doryab location 2021-03-19 11:15:57 -04:00
Meng Li 294d84277d Fix bug of sleep intraday PRICE provider when the dataframe of a segment is empty 2021-03-17 15:21:31 -04:00
JulioV 4c2f60fffd Fix bugs in readable datetime and screen episodes 2021-03-16 20:01:43 -04:00
JulioV 4528ab3641 Replace SRC LANGUAGE and FOLDER with SCRIPT 2021-03-14 22:14:13 -04:00
Meng Li d529490999 Migrate fitbit features to new data stream 2021-03-12 12:38:36 -05:00
JulioV f65e3c8b1a Migrate empatica sensors to new data stream 2021-03-11 14:35:34 -05:00
JulioV fb054b539f Add support for multiple time zones 2021-03-11 14:35:34 -05:00
Meng Li aac87311e8 Update socialjetlag feature of sleep intraday: replace bedtime with midpoint sleep 2021-03-04 15:49:25 -05:00
Meng Li 7b4598357d Update the PRICE provider's example in sleep intraday docs 2021-02-26 17:47:01 -05:00
Meng Li 716ff3c592 Fix PRICE provider's bug when input is an empty dataframe 2021-02-26 17:47:01 -05:00
Meng Li d74196cab4 Add sleep intraday features with PRICE provider 2021-02-26 17:47:01 -05:00
Meng Li bedf7106e5 Fix sleep episodes bug 2021-02-26 17:47:01 -05:00
Meng Li 8377c12efb Add sleep intraday features with RAPIDS provider 2021-02-26 17:47:01 -05:00
nikunjgoel95 3d6caea6c4 Added the timeathome feature using infer_home_location.py as interim file. 2021-02-24 16:57:25 -05:00
JulioV faefca8b9a Fix extra index column when dataset is empty 2021-02-21 17:32:41 -05:00
JulioV 2e46f56111 Empatica zips must be placed in pid folder and small fixes 2021-02-21 17:32:41 -05:00
Joe Kim a26a44819a Add stats features for empatica bvp, eda, ibi, temp
Fix Snakefile file indentention
2021-02-21 17:32:41 -05:00
Joe Kim 4469cfd6bb add stats features for bvp, eda, ibi, temp 2021-02-21 17:32:41 -05:00
JulioV c6dc7e675a Add stats features for empatica heartrate
Turn off all empatica compute features
2021-02-21 17:32:41 -05:00
JulioV 3bb0230bac Add statistic features for empatica accelerometer 2021-02-21 17:32:41 -05:00
JulioV 8c726f5d4f Start empatica support 2021-02-21 17:32:41 -05:00
Meng Li b67f990816 Add new `FITBIT_DATA_YIELD` `RAPIDS` provider 2021-02-02 18:30:21 -05:00
nikunjgoel95 9b248c449d Fixing and adding MAXIMUM_ROW_DURATION. 2021-02-02 11:38:13 -05:00
nikunjgoel95 e7fc8f44f2 Removing Sampling Frequency and fixing ROG, location entropy and normalized location entropy. 2021-02-02 11:38:08 -05:00
nikunjgoel95 0bbf15f52e Fixed the features dependent on time duration. 2021-02-02 11:36:14 -05:00
Meng Li f83c5a585e Fix HR intraday bug: minutesonZONE features are 0 2021-02-01 13:57:12 -05:00
abhineethreddyk dbf57f43f3 Updated battery feature and its testing for periodic 2021-01-31 20:24:43 -05:00
Meng Li 25a3492eba Drop rows without "assigned_segments" column before feature extraction 2021-01-21 19:41:17 -05:00
Meng Li 797de54b34 Fix merge bug of fetch_provider_features() function 2021-01-21 14:58:31 -05:00
JulioV d0fe4d4c28 Add ALL_RESAMPLED flag and accuracy limit 2021-01-14 14:34:25 -05:00
JulioV 38fadbf202
Feature/doryab location clustering (#111)
* Added OPTICS -  lightweight clustering algorithm.

* Changed the error message for inconsistent parameters in CONFIG

* Removing hardcoded values and changing default EPS value in the clustering algorithm.

* Added Observation in Doryab Feature docs.

Co-authored-by: nikunjgoel95 <nikunjgoel2009@gmail.com>
2021-01-14 14:22:51 -05:00
JulioV b7ba3c6407
Feature/location doryab fix (#109)
* Fixing the doryab location features for context of clustering.

* Fixed the wrong shifting while calculating the distance.

* Refractoring the haversine function

* Removed comments.

* Cleaning parts of the code.

* Updated the documentation for CLUSTER_ON parameter.

Co-authored-by: nikunjgoel95 <nikunjgoel2009@gmail.com>
2021-01-07 16:20:46 -05:00
JulioV 51c7739bfc Revert "Start support for phone_keyboard"
This reverts commit dd95b4f941.
2020-12-20 16:29:40 -05:00
JulioV dd95b4f941 Start support for phone_keyboard 2020-12-14 13:42:22 -05:00
JulioV 63202c62cc Fix BT doryab bug and update change log 2020-12-12 17:11:48 -05:00
JulioV 05627296f4 Fix filter_data_by_segment bug 2020-12-12 17:10:59 -05:00
JulioV 5bd1bfe856 Add new bluetooth doryab features and deprecate rapids provider 2020-12-12 17:01:46 -05:00
JulioV 266dd28d02 Add bluetooth doryab features 2020-12-11 12:03:22 -05:00
JulioV 614e759551 Refactor day segments to time segments 2020-12-02 18:41:03 -05:00
Meng Li 016bdbfe8c Update Python feature scripts to add sensor and provider names automatically 2020-11-30 14:42:19 -05:00
Meng Li b4a512faf3 Add analysis example workflow 2020-11-25 16:34:05 -05:00
JulioV ced3305ddb Update R feature scripts to add sensor and provider names automatically 2020-11-25 14:49:42 -05:00
JulioV f02ca2624d Add phone yield sensor 2020-11-24 19:12:16 -05:00
Meng Li 767e838c87 Fix HR&Sleep bugs 2020-11-24 13:43:24 -05:00
Meng Li deba6b9e4f Update sleep summary features for segments 2020-11-23 12:01:00 -05:00
Meng Li 10384204a1 Update Fitbit HR feature name 2020-11-20 11:31:16 -05:00
Meng Li d3241c79f1 Update filter_data_by_segment() function: call chunk_episodes() inside the filter function 2020-11-19 17:27:53 -05:00
Meng Li a71efd6b85 Split FITBIT_STEPS into FITBIT_STEPS_SUMMARY and FITBIT_STEPS_INTRADAY 2020-11-11 21:16:48 -05:00
Meng Li 9fc36f67e2 Split FITBIT_HEARTRATE into FITBIT_HEARTRATE_SUMMARY and FITBIT_HEARTRATE_INTRADAY 2020-11-11 17:27:46 -05:00
Meng Li 39632c66f5 Update steps features for segments 2020-10-30 18:57:04 -04:00
JulioV 7f7eac0769 Merge branch 'ds2' into day_segments 2020-10-28 17:53:00 -04:00
JulioV c5197b6c5f Merge branch 'master' into ds2 2020-10-28 17:50:37 -04:00
Meng Li 93055dacee Update HR main.py 2020-10-28 17:02:21 -04:00
Meng Li ed7585c2bf Update heartrate features for segments 2020-10-27 17:55:57 -04:00
Meng Li 25e1f1fbb5 Update Python chunk_episodes 2020-10-26 18:47:57 -04:00
JulioV f0a551164a Fix AR names 2020-10-26 15:44:21 -04:00
JulioV 234588c94d Expose episode threshold between rows parameter 2020-10-26 15:28:19 -04:00
JulioV 2fe5a0d822 Update R chunk_episodes 2020-10-26 15:10:32 -04:00
JulioV c78ccfced7 Remove microseconds from chuncked date times 2020-10-26 15:03:31 -04:00
Meng Li 2b7bd0ae6e Modify output format of chunk_episodes() function 2020-10-26 13:00:53 -04:00
JulioV 86509207ac Turn off warnings for tidyverse and dplyr 2020-10-23 10:41:00 -04:00
Meng Li 8c0f6a000d Fix chunk_episodes() bugs: set segment_start_timestamp as int 2020-10-19 19:36:26 -04:00
JulioV 24bf62a7ab Update file names 2020-10-19 15:07:12 -04:00
Meng Li ac9cf92732 Add accelerometer features of PANDA provider 2020-10-13 17:54:53 -04:00
Meng Li 29dcd1f284 Add accelerometer features of RAPIDS provider 2020-10-13 11:42:36 -04:00
nikunjgoel95 dcf1255b4b Fix runtime bug in Radius of Gyration of Doryab Location. 2020-10-10 13:26:06 -04:00
JulioV 3996e0ab17 Fix bug when episodes are empty 2020-10-09 17:00:20 -04:00
JulioV 2c7beec1da Fix NAs are now 0 in some calls and msgs features 2020-10-08 12:23:54 -04:00
Meng Li 236b1cd809 Update AR module for segments; Refactor input format 2020-10-07 18:11:06 -04:00
nikunjgoel95 80ff3f4229 Cleaning the Doryab location features code to fix the bug of Emoty dataframe in ClusterAndLabel 2020-10-01 11:34:41 -04:00
Meng Li bccc9a0697 Move deduplicate_episodes() function into chunk_episodes() function; rename "time_diff" with duration 2020-09-29 18:05:25 -04:00
JulioV 39f6e3841c Update AR episode computation 2020-09-29 17:26:43 -04:00
JulioV 10b0386c8f Merge branch 'day_segments' of https://github.com/carissalow/rapids into day_segments 2020-09-29 17:24:41 -04:00
Meng Li f1717e59e7 Update screen&battery episodes features with different segment format 2020-09-29 17:13:34 -04:00
JulioV 499b92e240 Fix missing R library 2020-09-29 15:35:44 -04:00
JulioV 0dafdd1340 Redo resample episodes in R, new battery episodes 2020-09-29 15:18:48 -04:00
JulioV a6b99259f7 Fix bug when filtering by day segment and there are no rows belonging to that segment 2020-09-28 15:53:38 -04:00
nikunjgoel95 4f64f7eeef Fix the bug on ClusterAndLabel when recieving empty data. 2020-09-28 15:02:03 -04:00