# comp_acc

##### Compute overall accuracy (acc) from probabilities.

`comp_acc`

computes overall accuracy `acc`

from 3 essential probabilities
`prev`

, `sens`

, and `spec`

.

##### Usage

`comp_acc(prev, sens, spec)`

##### Arguments

- prev
The condition's prevalence

`prev`

(i.e., the probability of condition being`TRUE`

).- sens
The decision's sensitivity

`sens`

(i.e., the conditional probability of a positive decision provided that the condition is`TRUE`

).- spec
The decision's specificity value

`spec`

(i.e., the conditional probability of a negative decision provided that the condition is`FALSE`

).

##### Details

`comp_acc`

uses probabilities (not frequencies) as
inputs and returns an exact probability (proportion)
without rounding.

Understanding the probability `acc`

:

Definition:

`acc`

is the (non-conditional) probability:`acc = p(dec_cor) = dec_cor/N`

or the base rate (or baseline probability) of a decision being correct, but not necessarily positive.

`acc`

values range from 0 (no correct decision/prediction) to 1 (perfect decision/prediction).Computation:

`acc`

can be computed in 2 ways:(a) from

`prob`

:`acc = (prev x sens) + [(1 - prev) x spec]`

(b) from

`freq`

:`acc = dec_cor/N = (hi + cr)/(hi + mi + fa + cr)`

When frequencies in

`freq`

are not rounded, (b) coincides with (a).Perspective:

`acc`

classifies a population of`N`

individuals by accuracy/correspondence (`acc = dec_cor/N`

).`acc`

is the "by accuracy" or "by correspondence" counterpart to`prev`

(which adopts a "by condition" perspective) and to`ppod`

(which adopts a "by decision" perspective).Alternative names of

`acc`

: base rate of correct decisions, non-erroneous casesIn terms of frequencies,

`acc`

is the ratio of`dec_cor`

(i.e.,`hi + cr`

) divided by`N`

(i.e.,`hi + mi`

+`fa + cr`

):`acc = dec_cor/N = (hi + cr)/(hi + mi + fa + cr)`

Dependencies:

`acc`

is a feature of both the environment (true condition) and of the decision process or diagnostic procedure. It reflects the correspondence of decisions to conditions.

See `accu`

for other accuracy metrics
and several possible interpretations of accuracy.

##### Value

Overall accuracy `acc`

as a probability (proportion).
A warning is provided for NaN values.

See `acc`

for definition
and `accu`

for other accuracy metrics.
`comp_accu_freq`

and `comp_accu_prob`

compute accuracy metrics from frequencies and probabilities.

##### See Also

`acc`

defines accuracy as a probability;
`accu`

lists all accuracy metrics;
`comp_accu_prob`

computes exact accuracy metrics from probabilities;
`comp_accu_freq`

computes accuracy metrics from frequencies;
`comp_sens`

and `comp_PPV`

compute related probabilities;
`is_extreme_prob_set`

verifies extreme cases;
`comp_complement`

computes a probability's complement;
`is_complement`

verifies probability complements;
`comp_prob`

computes current probability information;
`prob`

contains current probability information;
`is_prob`

verifies probabilities.

Other functions computing probabilities: `comp_FDR`

,
`comp_FOR`

, `comp_NPV`

,
`comp_PPV`

, `comp_accu_freq`

,
`comp_accu_prob`

,
`comp_comp_pair`

,
`comp_complement`

,
`comp_complete_prob_set`

,
`comp_err`

, `comp_fart`

,
`comp_mirt`

, `comp_ppod`

,
`comp_prob_freq`

, `comp_prob`

,
`comp_sens`

, `comp_spec`

Other metrics: `accu`

, `acc`

,
`comp_accu_freq`

,
`comp_accu_prob`

, `comp_err`

,
`err`

##### Examples

```
# NOT RUN {
# ways to work:
comp_acc(.10, .200, .300) # => acc = 0.29
comp_acc(.50, .333, .666) # => acc = 0.4995
# watch out for vectors:
prev.range <- seq(0, 1, by = .1)
comp_acc(prev.range, .5, .5) # => 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5
# watch out for extreme values:
comp_acc(1, 1, 1) # => 1
comp_acc(1, 1, 0) # => 1
comp_acc(1, 0, 1) # => 0
comp_acc(1, 0, 0) # => 0
comp_acc(0, 1, 1) # => 1
comp_acc(0, 1, 0) # => 0
comp_acc(0, 0, 1) # => 1
comp_acc(0, 0, 0) # => 0
# }
```

*Documentation reproduced from package riskyr, version 0.2.0, License: GPL-2 | GPL-3*