validate - asserts the following:

`outcomes`

must have 1 column. Atomic vectors are treated as 1 column matrices.

check - returns the following:

`ok`

A logical. Does the check pass?`n_cols`

A single numeric. The actual number of columns.

## Value

`validate_outcomes_are_univariate()`

returns `outcomes`

invisibly.

`check_outcomes_are_univariate()`

returns a named list of two components,
`ok`

and `n_cols`

.

## Details

The expected way to use this validation function is to supply it the
`$outcomes`

element of the result of a call to `mold()`

.

## Validation

hardhat provides validation functions at two levels.

`check_*()`

:*check a condition, and return a list*. The list always contains at least one element,`ok`

, a logical that specifies if the check passed. Each check also has check specific elements in the returned list that can be used to construct meaningful error messages.`validate_*()`

:*check a condition, and error if it does not pass*. These functions call their corresponding check function, and then provide a default error message. If you, as a developer, want a different error message, then call the`check_*()`

function yourself, and provide your own validation function.

## See also

Other validation functions:
`validate_column_names()`

,
`validate_no_formula_duplication()`

,
`validate_outcomes_are_binary()`

,
`validate_outcomes_are_factors()`

,
`validate_outcomes_are_numeric()`

,
`validate_prediction_size()`

,
`validate_predictors_are_numeric()`

## Examples

```
validate_outcomes_are_univariate(data.frame(x = 1))
try(validate_outcomes_are_univariate(mtcars))
#> Error in validate_outcomes_are_univariate(mtcars) :
#> The outcome must be univariate, but 11 columns were found.
```