1. Grâce à ce formulaire vous pouvez proposer une astuce ou un script sur R.
  2. Votre script doit pouvoir être lancé en l'état. Veuillez penser à :
    • inclure le chargement des "library" nécessaires
    • construire un petit jeu de données si besoin est.
    • commenter les lignes de codes pour en faciliter la compréhension.
  3. Le titre de votre script ou astuce doit être clair et explicite.
  4. Pensez à mettre votre code entre les balises [R] et [/R]; Pour cela, vous pouvez utiliser le bouton

Vous pouvez utiliser vos comptes Facebook, twitter ou google pour vous identifer (google est compatible yahoo, openID...)
L'ideal étant de vous connecter si vous avez un compte utilisateur, ou faire une demande de compte utilisateur si vous n'en avez pas encore.
Créer un compte va vous permettre de pouvoir éditer vos codes et de mettre en avant votre site internet.
Sinon vous pouvez soumettre anonymement en remplissant les champs ci-après.







Choisissez les catégories correspondantes à votre Code:

  • algorithmique
  • Analyse de survie
  • base indispensable
  • bayésien
  • configuration de R
  • exportation de données
  • fonctions utiles
  • graphique
  • importation de données
  • inférence
  • manipulation de données
  • message d'erreur
  • modélisation
  • Non classé
  • optimisation
  • planification
  • programmer avec R
  • regression linéaire
  • Test
  • Transformation de données


Comment éliminer les modalités de facteurs qui n’existent plus dans une sous-sélection d’un jeu de données ?

4
dans fonctions utiles, manipulation de données, Transformation de données
Si vous sélectionnez une partie d’un jeu de données de départ, parfois certaines modalités de facteurs n’existent plus mais R les considère toujours pour une ACM par exemple et vous vous retrouvez avec des modalités qui n’existent pas dans votre jeu de données.

Voici une petite astuce pour les éliminer.

-> D’abord vous obtenez votre jeu de données à partir du jeu de données de départ qui regroupe toutes les modalités
-> Puis l’astuce consiste à enregistrer ce jeu de données puis le recharger.

 
write.csv2() #pour enregistrer le jeu de données avec les modalités inutiles
read.csv2() #pour le recharger
 


-> Faites ensuite un str(), les modalités inutiles n’existent plus.

Proposé par Stephane.

Ce script vous à rendu service? remerciez l'auteur en votant ici:
- ça ne sert à rien -- c\'est interessant - (pas encore de vote)
Loading ... Loading ...

4 Comments

  1. Guillaume
    Posté le 8 décembre 2011 a 16 h 34 min | Permalink

    tu peux aussi utiliser la fonction drop.levels de gplots

     
    library(gplots)
    drop.levels(dataset)
     
     

     

    et par magie toute les modalités inutilisées seront retirées! Mais n’oublie pas R n’est pas très agile pour manipuler les données il vaut mieux vérifier 2 fois qu’une !

  2. Stephane
    Posté le 9 décembre 2011 a 8 h 38 min | Permalink

    Drop.levels ne fonctionne pas bien, en tout cas pas bien avec l’ACM par exemple. J’ai eu le problème tout récemment. Même si en apparence les facteurs inutilisés ou les NA n’apparaissent plus, quand tu lances l’ACM, R les considere toujours comme une modalité notamment pour les NA.

  3. Posté le 12 décembre 2011 a 12 h 18 min | Permalink

    Une autre astuce :

     
    nouveau.jeu.de.donnees$variable.à.modifier <- as.factor(as.character(nouveau.jeu.de.donnees$variable.à.modifier))
     
  4. Benjamin
    Posté le 28 janvier 2014 a 13 h 57 min | Permalink

    Perso, le droplevels() de base a toujours fonctionné sans erreur chez moi!

Poster un commentaire


Votre email ne seras jamais communiqué champs requis désigné par une *

*
*


huit − = 3

Formation logiciel R