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