Modérateur : Groupe des modérateurs
Nicolas Péru a écrit :Ce dernier conserve toujours tous les niveaux d'un facteur alors que l'utilisation de factor supprime les niveaux vides (modalités non représentées).
Code : Tout sélectionner
> (f1 <- gl(3,1,labels=LETTERS[1:3]))
[1] A B C
Levels: A B C
> (f2 <- f1[f1!="B"])
[1] A C
Levels: A B C
> (f3 <- factor(f2))
[1] A C
Levels: A C
> (f4 <- as.factor(f2))
[1] A C
Levels: A B C
Code : Tout sélectionner
> (f1 <- gl(3,1,labels=LETTERS[1:3]))
[1] A B C
Levels: A B C
> (f2 <- f1[f1!="B"])
[1] A C
Levels: A B C
> (f3 <- factor(f2))
[1] A C
Levels: A C
> (f5 <- f3[f3 != "A"])
[1] C
Levels: A C
Maxime Hervé a écrit :Pour éviter de passer par un as.character() ou as.numeric(), il y a droplevels() sinon qui est bien pratique.
Code : Tout sélectionner
(f5 <- f3[f3 != "A", drop=TRUE])
[1] C
Levels: C
Code : Tout sélectionner
toto<-data.frame(x=1:3, , y=4:6)
class(toto[,1])
[1] "integer"
class(toto[,1, drop=TRUE]) # la valeur implicite
[1] "integer"
class(toto[,1, drop=FALSE])
[1] "data.frame"
Retourner vers « Questions en cours »
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité