Skip to content

Unified PPC/PPD interface via observed argument #434

@florence-bockting

Description

@florence-bockting

Summary

bayesplot currently maintains two parallel function families:

  • ppc_* functions: Compare predictive draws against observed data y.
  • ppd_* functions: Display predictive draws without observed data.

Conceptually, these families seem to be similar except for the inclusion of y. Maintaining two separate namespaces can make it harder for new users to navigate the package and understand the distinction between the two modules.

Proposed Change

Introduce a unified top-level interface where the presence or absence of observed data is controlled by an additional argument (e.g., observed):

# With observed data (PPC)
pp_dens(y, yrep, observed = TRUE, ...)

# Without observed data (PPD)
pp_dens(yrep = yrep, observed = FALSE, ...)

Relationship to Other Issues

This proposal is related to Issue#433, as both aim to unify the API through high-level wrapper functions. However, while Issue#433 focuses on unifying functions within a specific family (e.g., distributions, intervals, errors), this issue addresses the broader relationship between the PPC and PPD modules.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions