Skip to contents

Convert one-hot encoded matrix to factor

Usage

one_hot2factor(x, labels = colnames(x))

Arguments

x

one-hot encoded matrix or data.frame.

labels

Character vector of level names.

Value

A factor.

Details

If input has a single column, it will be converted to factor and returned

Author

EDG

Examples

x <- data.frame(matrix(FALSE, 10, 3))
colnames(x) <- c("Dx1", "Dx2", "Dx3")
x[["Dx1"]][1:3] <- x[["Dx2"]][4:6] <- x[["Dx3"]][7:10] <- TRUE
one_hot2factor(x)
#>  [1] Dx1 Dx1 Dx1 Dx2 Dx2 Dx2 Dx3 Dx3 Dx3 Dx3
#> Levels: Dx1 Dx2 Dx3