Inf in number_line objects.case_lengths or recurrence_lengths for the same event.
overlap_methods for the corresponding case_lengths and recurrence_lengths.links() to replace record_group().sub_criteria(). The new way of supplying a sub_criteria in links().exact_match(), range_match() and range_match_legacy(). Predefined logical tests for use with sub_criteria(). User-defined tests can also be used. See ?sub_criteria.custom_sort() for nested sorting.epid_lengths() to show the required case_length or recurrence_length for an analyses. Useful in confirming the required case_length or recurrence_length for episode tracking.epid_windows(). Shows the period a date will overlap with given particular case_lengths or recurrence_lengths. Useful in confirming the required case_length or recurrence_length for episode tracking.strata in links(). Useful for stratified data linkage. As in stratified episode tracking, a record with a missing strata (NA_character_) is skipped from data linkage.data_links in links(). Unlink record groups that do not include records from certain data sourceslistr(). Format atomic vectors as a written list.combns(). An extension of combn to generate permutations not ordinarily captured by combn.iteration slot for pid and epid objectsoverlap_method - reverse()number_line() - l and r must have the same length or be 1.episodes() - case_nm differentiates between duplicates of "Case" ("Duplicate_C") and "Recurrent" events ("Duplicate_R").episodes().
"Case").
episode_type - simultaneously track both "fixed" and "rolling" episodes.skip_if_b4_lengths - simultaneously track episodes where events before a cut-off range are both skipped and not skipped.episode_unit - simultaneously track episodes by different units of time.case_for_recurrence - simultaneously track "rolling" episodes with and without an additional case window for recurrent events.recurrence_from_last - simultaneously track "rolling" episodes with reference windows calculated from the first and last event of the previous window.strata. Options must be the same in each strata.
from_last - simultaneously track episodes in both directions of time - past to present and present to past.episodes_max - simultaneously track different number of episodes within the dataset.include_overlap_method - "overlap" and "none" will not be combined with other methods.
"overlap" - mutually inclusive with the other methods, so their inclusion is not necessary."none" - mutually exclusive and prioritised over the other methods (including "none"), so their inclusion is not necessary.NA_real_) or periods (number_line(NA_real_, NA_real_)) case_length and recurrence_length. This ensures that the event does not become an index case however, it can still be part of different episode. For reference, an event with a missing strata (NA_character_) ensures that the event does not become an index case nor part of any episode.fixed_episodes, rolling_episodes and episode_group - include_index_period didn’t work in certain situations. Corrected.fixed_episodes, rolling_episodes and episode_group - dist_from_wind was wrong in certain situations. Corrected.#Version 0.1.0 ##New features
record_group() - strata argument. Perform record grouping separately within subsets of a dataset.overlap(), compress_number_line(), fixed_sepisodes(), rolling_episodes() and episode_group() - overlap_methods and methods arguments replaces overlap_method and method respectively. Use different sets of methods within the same dataset when grouping episodes or collapsing number_line objects. overlap_method and method only permits 1 method per per dataset.epid objects - win_nm slot. Shows the type of window each event belongs to i.e. case or recurrence windowepid objects - win_id slot. Unique ID for each window. The ID is the sn of the reference event for each window
epid objects updated to reflect thisepid objects - dist_from_wind slot. Shows the duration of each event from its window’s reference eventepid objects - dist_from_epid slot. Shows the duration of each event from its episode’s reference eventepisode_group() and rolling_episodes() - recurrence_from_last argument. Determine if reference events should be the first or last event from the previous window.episode_group() and rolling_episodes() - case_for_recurrence argument. Determine if recurrent events should have their own case windows or not.episode_group(), fixed_episodes() and rolling_episodes() - data_links argument. Ungroup episodes that do not include records from certain data_source(s).episode_group(), fixed_episodes() and rolling_episodes() - case_length and recurrence_length arguments. You can now use a range (number_line object).episode_group(), fixed_episodes() and rolling_episodes() - case_length and recurrence_length arguments. You can now use a range (number_line object).episode_group(), fixed_episodes() and rolling_episodes() - include_index_period argument. If TRUE, overlaps with the index event or period are grouped together even if they are outside the cut-off range (case_length or recurrence_length).pid objects - link_id slot. Shows the record (sn slot) to which every record in the dataset has matched to.invert_number_line() - Invert the left and/or right points to the opposite end of the number lineleft_point(x)<-, right_point(x)<-, start_point(x)<- and end_point(x)<- accessor functions##Changes + overlap() renamed to overlaps(). overlap() is now a convenience overlap_method for ANY kind of overlap + "none" is another convenience overlap_method for NO kind of overlap + expand_number_line() - new options for point; "left" and "right" + compress_number_line() - compressed number_line object inherits the direction of the widest number_line among overlapping group of number_line objects + overlap_methods - have been changed such that each pair of number_line objects can only overlap in one way. E.g. + "chain" and "aligns_end" used to be possible but this is now considered a "chain" overlap only + "aligns_start" and "aligns_end" use to be possible but this is now considered an "exact" overlap + number_line_sequence() - Output is now a list. + number_line_sequence() - now works across multiple number_line objects. + to_df() - can now change number_line objects to data.frames. + to_s4() can do the reverse. + epid objects are the default outputs for fixed_episodes(), rolling_episodes() and episode_group() + pid objects are the default outputs for record_group() + In episode grouping, the case_nm for events that were skipped due to rolls_max or episodes_max is now "Skipped". + In episode_group() and record_group(), sn can be negative numbers but must still be unique + Optimised episode_group() and record_group(). Runs just a little bit faster … + Relaxed the requirement for x and y to have the same lengths in overlap functions. + The behaviour of overlap functions will now be the same as that of standard R logical tests + episode_group - case_length and recurrence_length arguments. Now accepts negative numbers. + negative “lengths” will collapse two periods into one, if the second one is within some days before the end_point() of the first period. + if the “lengths” are larger than the number_line_width(), both will be collapsed if the second one is within some days (or any other episode_unit) before the start_point() of the first period. + cheat sheet updated
##Bug fixes + Recurrence was not checked if the initial case event had no duplicates. Resolved + case_nm wasn’t right for rolling episodes. Resolved
#Version 0.0.3 ##Changes + #7 episode_group(), fixed_episodes() and rolling_episodes() - optimized to take less time when working with large datasets + episode_group(), fixed_episodes() and rolling_episodes() - date argument now supports numeric values + compress_number_line() - the output (gid slot) is now a group identifier just like in epid objects (epid_interval)
#Version 0.0.2 ##New feature + pid S4 object class for results of record_group(). This will replace the current default (data.frame) in the next major release + epid S4 object class for results of episode_group(), fixed_episodes() and rolling_episodes(). This will replace the current default (data.frame) in the next release + to_s4() and to_s4 argument in record_group(), episode_group(), fixed_episodes() and rolling_episodes(). Changes their output from a data.frame (current default) to epid or pid objects + to_df() changes epid or pid objects to a data.frame + deduplicate argument from fixed_episodes() and rolling_episodes() added to episode_group()
##Changes + fixed_episodes() and rolling_episodes() are now wrapper functions of episode_group(). Functionality remains the same but now includes all arguments available to episode_group() + Changed the output of fixed_episodes() and rolling_episodes() from number_line to data.frame, pending the change to epid objects + pid_cri column returned in record_group is now numeric. 0 indicates no match. + columns can now be used as criteria multiple times record_group() + #6 number_line objects can now be used as a criteria in record_group()
##Bug fixes + #3 - Resolved a bug with episode_unit in episode_group() + #4 - Resolved a bug with bi_direction in episode_group()
#Version 0.0.1 ##Features + fixed_episodes() and rolling_episodes() - Group records into fixed or rolling episodes of events or period of events. + episode_group() - A more comprehensive implementation of fixed_episodes() and rolling_episodes(), with additional features such as user defined case assignment. + record_group() - Multistage deterministic linkage that addresses missing data. + number_line S4 object. + Used to represent a range of numeric values to match using record_group() + Used to represent a period in time to be grouped using fixed_episodes(), rolling_episodes() and episode_group() + Used as the returned output of fixed_episodes() and rolling_episodes()