Package: cambridge-mask-stats
Cambridge Mask StatsApplication to output the wearing time and other statistics of a Cambridge
N99 | FFP2 mask.the program is in the alpha phase. this means that the api
will probably change often. the code is written in such a way that the syntax
in the console is maintained or at least only minimal changes are made. this
description also only deals with the terminal. the api will be described
in the documentation of the code, if this is necessary. it is tried to write
the code in a way that it is easy to understand.the application is intended exclusively for the pro version of the cambridge
mask, which should be worn for a maximum of 340 hours. the minutes are
calculated automatically for aqi_level higher than 2, so that the wear is
displayed correctly.if there is no entry in the csv for a day between the start and end date, the
time carried is automatically set to 0 for that day. this means that for months
that lie between the start and end monthcount_dalso counts the days for
which the mask was not worn or for which there is no entry in the csv file.when predicting the end of life of a mask, the average value in minutes for the
number of days (standard: 30) passed in the argumentdaysfor the calculation.
if there is no value for one of these days, the value for this day is
calculated as 0. the mean value is calculated from all masks worn, not per mask.only 1 mask per day can be recorded! Otherwise there is aValueError.requirementspython versionPython >= 3.6dependenciesnumpy==1.21.2
pandas==1.3.2
python-dateutil==2.8.2
pytz==2021.1
six==1.16.0pip installation (with dependencies)pipinstallcambridge-mask-statscsv filethe CSV file to import needs the following header:date,id,model,aqi_level,minutes_worndate -> format yyyy-mm-ddid -> mask id. preferably consecutive numberingmodel -> mask model like 'The Churchill Pro'aqi_level -> from 1-5 according to the data in the manual (1 = aqi below 50, 2 = 50 - 100 ...)minutes_worn -> minutes worn on this dateexecutemask-stats<FILEPATH>abbreviations in the outputcount_d -> days in the month for which data are availableeol_d -> prediction in how many days the mask will probably reach its end of lifeeol_date -> prediction on which date the mask will probably reach the end of lifehrs -> hours (really worn)mean_min_d -> mean minutes dailypct -> percent | percentage (determined from sum_min_ratio)sum_hrs -> summary hourssum_min -> summary minutesworn_d -> days worn*_ratio -> values under consideration of the ratio (aqi_level > 2)usageusage: masks-stats [-h] [--days DAYS] file

positional arguments:
  file

optional arguments:
  -h, --help            show this help message and exit
  --days DAYS, -d DAYS  days to be used in the end of life prediction. enter 0 for all [default: 30]examplesmasks-stats/home/w01fdev/Documents/masks.csvoutput******************* StatsMasks *******************
worn | wear           hrs  hrs_ratio  worn_d   pct  eol_d    eol_date
id model                                                             
1  The Admiral Pro     10         12       7  3.53    335  2022-08-07
2  The Churchill Pro   15         27      22  7.94    319  2022-07-22

***************** StatsDateRange *****************
worn | wear  count_d  mean_min_d  mean_min_d_ratio  sum_min  sum_min_ratio  sum_hrs  sum_hrs_ratio   pct
2020-08-31         1          58                58       58             58        0              0  0.28
2020-09-30        30           9                18      278            563        4              9  2.76
2020-10-31        31          39                56     1237           1759       20             29  8.62list of possible extensionsoutput of plotspercentage change in wearing time compared to last month