-
updated the license to MIT: LightLogR is now permissively licensed
-
import
functions will now give a warning message about identical observations in the provided data files, stop the import process and return a tibble with the duplicate rows. Through theremove_duplicates
parameter, the user can decide to automatically remove these duplicates during import. Note: identical observations refers to identical rows when disregarding the filename.
-
added support for OcuWEAR devices
-
added support for MotionWatch 8 devices #32
-
added support for LIMO devices
-
added support for GENEActiv devices, when data was preprocessed with the
GGIR
package. The functionimport$GENEActiv_GGIR()
takes theGGIR
output and imports it with LightLogR naming schemes. #27
-
release on CRAN!
-
changed the
supported.devices
list to a functionsupported_devices()
instead, so the documentation automatically updates with the list of supported devices. Similarly,ll_import_expr
is nowll_import_expr()
. -
added support for the Meta
VEET
device for visual experience measurements -
added support for the
Kronowise
device -
added support for the MPI
melanopiQ Circadian Eye
(Prototype) -
rewrote the import function for
Actiwatch_Spectrum
, as the sample file the original was based off, had specific formatting to German standards. Now, the German version can still be called throughActiwatch_Spectrum_de
, wheras the main function refers to the english/international format. -
updated the landing page for the website with a list of supported devices and a table of metrics
-
small changes to documentation
- Submission to CRAN
-
Changes to the tutorial articles on the website
-
Integration of a community survey on the website and Github Readme.
-
bright_dark_period()
now maintains the date when looping the data. -
Added articles on
Import & Cleaning
,Metrics
, andVisualizations
to the website. -
Added the option for more print rows of observation intervals during
import
. -
Added the option to set a length for the dataset starting from the end in
filter_Datetime()
and family.
-
Added the function
aggregate_Date()
to aggregate long datasets to one day per group. -
New function
gg_doubleplot()
for ... well, double plots.
- Backup to Zenodo, DOI and all
- New and updated metric functions. LightLogR now contains 16 metric families with 60 sub-metrics.
-
added import functions for
nanoLambda
andLightWatcher
devices -
new Logo!
-
fixed bug in
interval2state()
that would dismiss the first state if it starts before the actual data -
fixed a bug in
interval2state()
that would add other columns then theState
column present in the interval dataset to the output dataset, but leave them empty. Added an example that shows how to add multiple columns to the output dataset correctly. -
in
aggregate_Datetime()
, added the option to set thedominant.epoch
, i.e., the most common interval, as theunit
parameter, to effectively deal with irregular data.
-
Added the functions
dst_change_summary()
anddst_change_handler()
to detect and deal with Daylight Savings. The functionality is also integrated into the import functions, so that a user can automatically apply it during the import process. -
Added Steffen Hartmeyer as a collaborator, who added a number of light metrics from the
lightdosimetry
package. -
Added the
import_adjustment()
function for more flexibility when importing light logger data that does not conform to the standard format. This goes hand in hand with thell_import_expr
list that contains specific expressions for all supported devices. -
lots of bug fixes and improvements
-
Bugfix for
LiDo
import -
Added import support for new devices:
LiDo
,DeLux
, andSpeccy
-
Removed minor inconsistencies in naming conventions. Also, all imported columns will have syntactic naming now
-
Added an option to all
gap
functions, to extend the gapless Datetime range to full days.
-
Exports the up to now internal function
count_difftime()
that is the basis fordominant_epoch()
. But whereas the latter gets only the most common epoch,count_difftime()
returns a table with the counts of all epochs. This is useful in conjunction withgap_finder()
, to check the distribution of data intervals. -
Added the
gg_days()
function to visualize multiple days of data in a single plot. Alongside come two helper functions,Datetime_limits()
andDatetime_breaks()
, to set the limits and breaks of the x-axis. -
Added the
filter_Datetime_multiple()
function to filter for multiple Datetime ranges depending on certain conditions, e.g. different filter cutoffs for different participants. It wraps aroundfilter_Datetime()
orfilter_Date()
. -
Reworked the internals of the light logger data import functions. They now use a more straightforward function factory approach. For users the only visible change it that device specific functions now have the form
import$device()
instead of the oldimport.device()
. -
Added the
symlog_trans()
function from a post on stack overflow. This function leads to a better visualization of light logger data, as a logarithmic transformation is necessary, but values of 0 are common. The function was integrated as a default forgg_day()
and will likely be the basis of upcoming visualization functions. -
Added the
aggregate_Datetime()
function to aggregate data to a given time interval. -
Added the
gg_overview()
function to get a sense for the timeframe of measurement data. -
Added the family of
regularize
functions to find and deal with implicit missing data. These functions includedominant_epoch()
,gapless_Datetimes()
,gap_handler()
, andgap_finder()
. -
A ton of updates to documentation, unit tests, and bug fixes.
-
Added Unit tests and documentation for all new functions.
-
To
filter_Datetime()
andfilter_Date()
added the option to filter for group specific dates. -
Added the family of functions around
States
andReference
to import, process, and add states to light logger data, like sleep/wake times, wear times, or other data. This family includesimport_Statechanges()
,sc2interval()
,ìnterval2state()
,data2reference()
,sleep_int2Brown()
,Brown_check()
,Brown_rec()
, andBrown2reference()
. -
Added the Article/Vignette "What´s in a Day" to demonstrate the LightLogR workflow.
-
Added the convenience function
create_Timedata()
to create a Time-of-Day column in datasets. -
Added the family of
filter_Datetime()
,filter_Date()
andfilter_Time()
functions to easily filter datasets. -
Added unit tests for the first functions.
-
Added several helper functions to work with states like sleep or wear times.
-
Added an automatic ID creation at import and streamlined the
import
functions. -
Added the function
join_datasets
to combine imported datasets with sensible constraints.
-
Added
major grid marks
for the y-axis. -
Added a
message
when using start or end dates to make it clear, that only the Date portion of the input will be used. -
Changed the behavior, when there is already a Day.data column present in the data. It will only create a new column if none is present, otherwise it will use the existing column for faceting (after factorization)
-
Added the option to create an
interactive
plot by feeding the plot to the [plotly] package.
- Added a
NEWS.md
file to track changes to the package.