Comment puis-je créer binned facteur de variables à partir d'une variable continue, avec les pauses?
J'ai un vecteur qui ressemble à ceci:
dataset <- c(4,7,9,1,10,15,18,19,3,16,10,16,12,22,2,23,16,17)
Je voudrais créer quatre mannequin catégories, dans lequel j'ai bin l'ensemble de données continues, par la coutume, les pauses . .. par exemple: 1:4, 5:9, 10:17, 18:23.
La sortie factice catégories ont la même longueur que l'original continue vecteur (18 dans ce cas), mais maintenant, à chaque mise à la poubelle de la variable muette voudrais juste contiennent un 1 ou un 0.
OriginalL'auteur Luke | 2012-09-10
Vous devez vous connecter pour publier un commentaire.
Utilisation
cut
:cut
de variables muettes (qui est ce que l'OP a demandé), essayez demodel.matrix(~bin-1,data=dataset)
OriginalL'auteur Joshua Ulrich
Je suis d'accord avec Josué qui
cut
est ce que la plupart des gens pensent de cette tâche. Je n'arrive pas à l'instar de ses valeurs par défaut, préférant disposer de gauche des intervalles fermés et c'est une douleur mineure pour le mettre en place correctement aveccut
(bien qu'il peut être fait. Heureusement pour mon faible cerveau, Frank Harrell a conçu uncut2
fonction dans son Hmisc paquet dont les valeurs par défaut je préfère. Une troisième alternative est d'utiliserfindInterval
qui est particulièrement adapté pour des problèmes où vous wnat à utiliser le résultat comme un indice à l'autre extractions ou du processus de sélection. Ses résultats sont à peu près ce que vous obtiendriez si vous avez appliquéas.numeric
aux résultats decut
:(Notez que
findInterval
va utiliser la limite supérieure que l'extrémité fermée pour former un supplément d'intervalle, sauf si vous remplacez le maximum avecInf
, un mot réservé pour l'infini dans l'arrêt R.)OriginalL'auteur 42-