You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We call "scoring rule" any function that computes a score / metric / quantity of interest based on forecasts and observed values. We call "score" the output of a scoring rule.
"Scoring rule" usually means the specific R function that computes a score. We use sentences such as "you can pass a list of scoring rules to score(), or "you can call a scoring rule directly". And "scores are computed by scoring rules". Sometimes, "scoring rule" can also denote the function in a more abstract, mathematical sense. For example we would say "the absolute error is a scoring rule" or the "CRPS" is a proper scoring rule. Sometimes we use "rules" as short for "scoring rules", for example when naming function arguments.
In other contexts in the literature, "score" is also used as short for "scoring rule", for example in a sentence like "the CRPS is a proper score". We will avoid this terminology.
Scoring rules are consistently named in the following way: <name of the scoring rule> + _ + <forecast type>
If there is only one forecast type for which a scoring rule is applicable, _ + <forecast type> is sometimes omitted.
get_-functions
functions with the prefix get_ are designed to provide additional information based on the data
they are usually called on the raw forecasts
Classes
We have one class for every forecast type
forecast_binary
forecast_point
forecast_sample
forecast_quantile
We have a class for the output of score():
score
Plotting functions
We briefly considered having classes solely for plotting (with the class named after the function). But then we decided to instead have dedicated plotting functions.
Plotting functions are named plot_ + name of function. If the function name has a prefix like get_, then that is replaced with plot_.
Examples: plot_forecast_counts, plot_correlation, plot_pairwise_comparion.
add_-functions
Functions with an add_ prefix add columns with additional information to their inputs. add_pairwise_comparison() add_coverage() add_interval_range()
Internal input checks
check_, assert_, test_
assert_: Returns NULL invisibly if the assertion was successful and throws an error otherwise.
check_: Returns TRUE if the check was successful and a string with an error message otherwise
test_: Returns TRUE if the check was successful and FALSE otherwise
The text was updated successfully, but these errors were encountered:
This feels a bit outdated and possibly complete? Potentially we need to clearly document somewhere what the current decisions are?
nikosbosse
changed the title
Create a consistent scheme for naming functions and entities
Create documentation/vignette for the naming scheme of our functions
Mar 5, 2024
Edit: Warning - this might be partly outdated.
We should aim for as much consistency as possible in naming things.
This issue summarises our current thinking and should eventually become a Vignette
Scoring rules
See
#476#610.We call "scoring rule" any function that computes a score / metric / quantity of interest based on forecasts and observed values. We call "score" the output of a scoring rule.
"Scoring rule" usually means the specific
R
function that computes a score. We use sentences such as "you can pass a list of scoring rules to score(), or "you can call a scoring rule directly". And "scores are computed by scoring rules". Sometimes, "scoring rule" can also denote the function in a more abstract, mathematical sense. For example we would say "the absolute error is a scoring rule" or the "CRPS" is a proper scoring rule. Sometimes we use "rules" as short for "scoring rules", for example when naming function arguments.In other contexts in the literature, "score" is also used as short for "scoring rule", for example in a sentence like "the CRPS is a proper score". We will avoid this terminology.
Scoring rules are consistently named in the following way:
<name of the scoring rule> + _ + <forecast type>
If there is only one forecast type for which a scoring rule is applicable,
_ + <forecast type>
is sometimes omitted.get_
-functionsget_
are designed to provide additional information based on the dataClasses
We have one class for every forecast type
forecast_binary
forecast_point
forecast_sample
forecast_quantile
We have a class for the output of
score()
:score
Plotting functions
We briefly considered having classes solely for plotting (with the class named after the function). But then we decided to instead have dedicated plotting functions.
Plotting functions are named
plot_ + name of function
. If the function name has a prefix likeget_
, then that is replaced withplot_
.Examples:
plot_forecast_counts
,plot_correlation
,plot_pairwise_comparion
.add_
-functionsFunctions with an
add_
prefix add columns with additional information to their inputs.add_pairwise_comparison()
add_coverage()
add_interval_range()
Internal input checks
check_
,assert_
,test_
assert_
: Returns NULL invisibly if the assertion was successful and throws an error otherwise.check_
: Returns TRUE if the check was successful and a string with an error message otherwisetest_
: Returns TRUE if the check was successful and FALSE otherwiseThe text was updated successfully, but these errors were encountered: