Skip to content

R2

Coefficient of determination (\(R^2\)) score

The coefficient of determination, denoted \(R^2\) or \(r^2\), is the proportion of the variance in the dependent variable that is predictable from the independent variable(s). 1

Best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse). A constant model that always predicts the expected value of \(y\), disregarding the input features, would get a \(R^2\) score of 0.0.

\(R^2\) is not defined when less than 2 samples have been observed. This implementation returns 0.0 in this case.

Attributes

  • bigger_is_better

    Indicate if a high value is better than a low one or not.

  • works_with_weights

    Indicate whether the model takes into consideration the effect of sample weights

Examples

from river import metrics

y_true = [3, -0.5, 2, 7]
y_pred = [2.5, 0.0, 2, 8]

metric = metrics.R2()

for yt, yp in zip(y_true, y_pred):
    metric.update(yt, yp)
    print(metric.get())
0.0
0.9183
0.9230
0.9486

Methods

get

Return the current value of the metric.

is_better_than

Indicate if the current metric is better than another one.

Parameters

  • other

revert

Revert the metric.

Parameters

  • y_true'numbers.Number'
  • y_pred'numbers.Number'
  • w — defaults to 1.0

update

Update the metric.

Parameters

  • y_true'numbers.Number'
  • y_pred'numbers.Number'
  • w — defaults to 1.0

works_with

Indicates whether or not a metric can work with a given model.

Parameters