Make slide function broadcasting controllable. #227
Labels
enhancement
New feature or request
op-semantics
Operational semantics; many potentially breaking changes here
P1
medium priority
Work on #64 reveals some further incompatibilities between
epi_slide
andepix_slide
regarding broadcasting, and it's unclear what the default should be. In previous discussions, we decided that it should be simple enough for the user to postprocess the current broadcasting approach to something not-broadcasting, but I'm hoping that we can achieve better clarity by providing a parameter and/or splitting into multiple functions and/or providing helper functions.epi_slide
(this adds columns and maintains row count likemutate
):group_by
might be surprising.)summarize
-like behavior, one should do a (still-grouped)slice(1L)
and drop certain columns (typically expected to be the non-grouping key cols); to get this to anepi_df
, depending on ifgeo_value
was in the grouping vars, one may need to add ageo_value="us"
column and construct theepi_df
.epix_slide
(this throws away non-grouping columns likesummarize
and does broadcasting differently): we may want a few behaviors:summarize
[TODO check if we need this behavior iff
is doing anepi_cor
etc., where output doesn't have annrow
matching the broadcast targetnrow
. + there will be work here trying to decide what the appropriate class and key of the slide output should be given variousf
outputs.]mutate
-like behavior: broadcast, form anepi_archive
, andepix_merge
back with the original archive --- not sure this is well-formed as iteration is acrosstime_value
andversion
simultaneously [should we take the slide result, duplicate itstime_value
asversion
, form anepi_archive
, andepix_merge
; or take the slide result, renametime_value
toversion
, form a generalized archive that doesn't have atime_value
column, and merge it (where its rows are duplicated for eachtime_value
in the existingepi_archive
with corresponding common key variables, or using a symbolic merge that does this for every possibletime_value
, not just those in the exisitngepi_archive
)?]The text was updated successfully, but these errors were encountered: