Following conventions apply to the easystats-ecosystem, to ensure that function and argument names as well as element names for return-values follow a consistent pattern across all packages.
Importing other packages
No full import, only selective import of functions
Use base-R wherever possible (to reduce hard dependencies)
Make sure R-version requirements are not too strict
Package versioning
Helper-functions
tibble::has_name()
), to reduce dependencies.print
functions
print
methods should invisibly return the original (unchanged) input (#65).Function names
Lower case, underscore separated if more than one verb.
Common prefix for functions that focus on specific “tasks” or workflows (e.g. insight, get_*()
to get data, find_*()
to find information, or performance, performance_*()
to compute measures of model quality, check_*()
to check model assumptions…).
Internal functions (that are not exported, like the previously mentioned helper-functions) should always start with a .
(e.g., .do_some_internal_stuff()
).
Argument names
Element / Column names (for returned data frames)
First letter of the column name is capital, unless (6) applies (example: Parameter
).
First letter of nouns is capital, unless (6) applies (example: ROPE_Percentage
, Prior_Scale
).
Using underscore rather than camelCase to separate words (example: CI_high
).
Multiple words: common/main part first and adjective/specifier/variational part after, unless (8) applies (example: Median_standardized
, ROPE_percentage
).
Abbreviations: all uppercase (example: ESS
, MCSE
, ROPE
).
Keep conventions for reserved words (example: p
, pd
, Rhat
).
Adjectives / verbs: all lower case, unless (1) applies (example: high
or low
in CI_high
or CI_low
).
In case of multiple occurrences of column names that indicate the same measure or content (like CI_low
or SE
), the common part is appended as suffix to the context specific part (example: CI_low
and Eta2_partial_CI_low
, and not CI_low
and CI_low_Eta2_partial
).
The “squared” term in column names that refers to “common” statistics (Eta2
, Chi2
, Omega2
, …) should be written as 2
, not sq
, squared
or pétit-deux
(example: Chi2
, and not Chisq
, Eta2
, and not Eta_squared
). This rule does not apply to function names.