Package: nimbalwear
nimbalwearnimbalwear is an open source toolkit for processing data from wearable sensors.ContentsUnder constructionInstallationTo install the latest release of nimbalwear directly from GitHub using pip, run the following line in terminal or
console:pip install git+https://github.com/nimbal/nimbalwearTo install a specific release, insertM.mafter the repository name to install from the branch associated with that
minor release. For example:pip install git+https://github.com/nimbal/nimbalwear@0.21Package DependencyTo include the latest release of nimbalwear as a dependency in your Python package, include the following line insetup.pyor include the string within the list alongside your other dependencies:install_requires=['nimbalwear@git+https://github.com/nimbal/nimbalwear@[version]']To include a specific release, replace[version]with the branch associated with that minor release.Changes by versionv0.21.6bug fix: resolve error in collection report when not all possible device locations collectedv0.21.5add collection reportchange vertdetach references to nimbaldetachbug fix: remove all Nonin file capabilities to resolve textract/six issues with Python 3.12v0.21.4add get_timestamps method to Device objectbug fix: error when dataframes not created if data does not existbug fix: error creating nonwear bouts dataframe if no nonwear detectedbug fix: dropping rejected syncs if none detectedv0.21.3update vertdetach versionupdate compatibility with pyedflib v1.0.34 (sex header field and sample_frequency)bug fix: datetime conversion when reading nonwear csvbug fix: add flatten-dict to setup.cfgv0.21.2bug fix: indexing issue caused states to sometimes be skippedbug fix: start date calculation for multiple gait devicesv0.21.1fixed MANIFEST.in bugv0.21.0reorganized gait module codev0.20.1adjust start time moved to before syncv0.20.0add autocal offset and scale outputsoption to save separate sensor EDF files after data prepmove settings dump from log into separate filerename Pipeline class to Studyseparate default, study, and custom pipeline settingssome missing data handled and reported as warning instead of raising exceptionbug fix: all filters now dual passseparate sync event and segments into separate folderssyncs detected from any axis rather than choosing those from one axisinclude config sync in sync listadd ref device type and location to sync outputv0.19.8bug fix: properly handles Axivity devices with no gyro collectedv0.19.7bug fix: instead of error, sync returns empty DataFrame when no syncs detected or matchedbug fix: fix bug where sync plots aren't displayedv0.19.6bug fix: ensure physical_min < physical_max when writing edfv0.19.5bug fix: properly detects sleep bouts when entire SPTW is sleepv0.19.4added utility to read password protected excel filesv0.19.3bug fix: adjust filter order in activity modulebug fix: fix error when trying to run activity module with no sleep detectedv0.19.2bug fix: properly calculates sample indices to be removed - no longer attempts to remove sample beyond end of windowv0.19.1add minimum correlation option for syncbug fix: references to settings.json instead of settings.toml on installv0.19.0subjects.csv renamed to collections.csv and coll_id column addedsettings.toml replaces settings.jsonmoved config_time check to only occur on first device in sync and display appropriately in logactivity analysis now done for all wrist devices available with options to select cutpointsPipeline.add_custom_events() provides ability to add or replace custom events from csvcan specify separate non-wear detection parameters for ankle, wrist, and trunk devicesv0.18.3change search radius to minutesfix bug in plot if sync is near end of sync radiusfix assignment bug if search radius is not setv0.18.2fix bug where pipeline tries to autocalibrate data from file that wasn't foundv0.18.1fix bug when sync search radius falls outside target collection timev0.18.0insert wear bouts between nonwear bouts (added event column)v0.17.3fixed bug excluding sleep windows to exclude from activityv0.17.2accel step detection uses gait_stats for summaryv0.17.1rename start_timestamp and end_timestamp to start_time and end_time in gaitv0.17.0rename "feedback report"add daily non-wear summarycrop non-wear from start of collectionseparate sedentary detected from wrist data while walking from other sedentaryoption to classify sptw and sleep bouts as 'overnight'v0.16.3handle Bittium file import if header is imperfectadd sync search radiusv0.16.2activity fixesoutput 1-second avmfix hard-coded epoch_lengthv0.16.1add accel_std_thresh_mg as nonwear setting in JSON filecheck for accelerometer signals before autocalfix Nonin device data import bugsfix missing gait pushoff data bugv0.16.0updated filtering and vm calculation for activity calculation (faster)renamed Data object to Deviceadded autocalibration of accelerometersadded relevant functions from  nwdata, nwnonwear, nwgait, nwsleep, nwactivity, and nwapp as data.py, nonwear.py,
gait.py, sleep.py, activity.py and app.py modulestidy sync outputsadd option to provide alternative settings.json filenew processing log for each collectionoutput settings to logv0.15.2update to nwdata v0.9.2 (much faster file reading and writing)update to nwgait v0.4.2new processing log for each run callv0.15.1fix package setup filesv0.15.0add option to adjust start time of device on convertupdate to nwnonwear v0.2.0 that uses vertdetach packageallow choice between accel and gyro step detectionupdate pandas append to concatv0.14.2bug fix: non-wear end detection windows in proper direction (nwnonwear v0.1.3)bug fix: non-wear detection accounts for temperature frequency in rate of change (nwnonwearv0.1.3)v0.14.1add option to lowpass data before activity calculations (nwactivity v0.2.1)bug fix: does not count activity during nonwear or sleep (nwactivity v0.3.0)v0.14.0add option to synchronize devices on convert (nwdata v0.9.0)select activity cutpoints based on age (nwactivty v0.2.0)bug fix: dominant hand from subjects.csv no longer case sensitivev0.13.0gyro step detection for gaitv0.12.0nwdata v0.8.0 updateadd option to crop NWData inplaceadd read_header method to CWAFileadd rotate_z method to rotate accelerometer and gyroscope data around z axisadjust Bittium accelerometer signals to g instead of mgrestructure NWData headerv0.11.1create separate file for rejected stepsbug fix: only include single device in cropped nonwear csvbug fix: report correct steps detected in log filebug fix: do not allow sleep and nonwear to overlap (nwsleep v0.3.1)bug fix: dedicated logger based on study codev0.11.0reorganized Pipeline and Collection classesmoved many settings to settings.json fileread and convert split so convert can be tracked by statusupdate to nwdata v0.7.2adjust gait algorithm and vertical axis detection (nwgait v0.3.0)bug fix: quiet variable is passed to edf export functionv0.10.0modify collection loop to only perform collections included in device listcreate cropped non-wear time filebug fix: file duration calculation while cropping (nwdata v0.7.1)v0.9.0updated to nwdata v0.7.0 to incorporate multiple changesconvert to ndarray  before write with pyedflib (bug)handle Bittium Faros 360 and variable signalsupdate device type codesModify device and sensor logic to match nwdata v0.7.0bug fix: axis selection during gait detection (nwgait v0.1.4)v0.8.0add option to run daily sleep stats on all sptw that contain sleep (nwsleep v0.3.0)v0.7.2add option to select axis used to detect gaitadd daily_all sleep stats outputbug fix: convert device locations to upper case when selecting devicesbug fix: add column names to steps table if none found (workaround)bug fix: check for minimum usable data and candidate sptw and sleep bouts before continuing processing (nwsleep v0.2.2)v0.7.1update pyedflib for all required packagesv0.7.0add mechanism to add data dictionaries to output foldersignore non-wear when detecting sleep period time windows (nwsleep v0.2.0)run t5a5 and t8a4 sleep bout detectionrequire pyedflib v0.1.22v0.6.0add non-wear detection for Axivity devices (AXV6) (nwnonwear v0.1.2)interpolate inserted values when correcting clock drift or sample rate (nwdata v0.5.0)faster GENEActiv read and progress bars on clock drift correct (nwdata v0.6.0)adjust device selection logic for activity, gait, sleep analyticsv0.5.0updatenwdatato require v0.4.0fixes bug where startdate not updated when cropping NWDataadds method to get day indices of a signaladd subjects.csvadd sleep detection and analysis (nwsleep v0.1.0)fix bug where errors during collection not logged correctlyv0.4.0updatenwactivityto require v0.1.1 (remove mvpa from daily summary)updatenwgaitto require v0.1.2 (add daily gait summary)add daily gait summary outputadd pipeline status trackingrenames EDF files to standard names based on information from devices.csvloads data only required devices for single stageadd support for Axivity AX6 devices (updatenwdatato require v0.3.0)v0.3.0add gait processing (nwgait v0.1.0)add unexpected error handling with traceback output to logadd activity processing (nwactivity v0.1.0)add study_code as an identifier for all generated dataadd nonwear_bout_id to nonwear output (nwnonwear v0.1.1)v0.2.0add nonwear processing (nwnonwear v0.1.0)add option to process only a single stage of the pipelinev0.1.1updatenwdatato require v0.1.2