Convertir un vector en matriz lógica.
¿Existe una función R nativa que tome un vector de entrada y devuelva la matriz binaria correspondiente donde la matriz tiene el mismo número de columnas que los valores únicos en el vector de entrada?
Por ejemplo, dadox <- 1:3
, Quiero devolver la siguiente matriz:
[,1] [,2] [,3]
[1,] 1 0 0
[2,] 0 1 0
[3,] 0 0 1
Las funcionescontrasts
se acerca, pero parece que no puedo sortear las columnas n-1 devueltas:
> contrasts(as.factor(x))
2 3
1 0 0
2 1 0
3 0 1