Accueil > Astuces... > Manipulation de données : quelques mini-fonctions

R

Manipulation de données : quelques mini-fonctions

samedi 2 novembre 2013
Mis à jour le vendredi 2 janvier 2015

Les fonctions na.rm et rm.unused.levels sont maintenant disponibles dans le package questionr (à partir de la version 0.3.0).

Deux petites fonctions pour manipuler un tableau de données sous R.

Suppression des valeurs manquantes

  1. na.rm <- function(x, v=NULL)
  2. {
  3. if (!is.data.frame(x)) x <- as.data.frame(x)
  4. # Les variables a traiter sont specifiees ?
  5. if (is.null(v))
  6. v <- names(x)
  7. # Pour chaque variable specifie, suppression des observations si NA
  8. r <- x[complete.cases(x[v]),]
  9. return(r)
  10. }

Télécharger

na.rm est similaire à na.omit sauf qu’il est possible de spécifier les variables à prendre en compte.

Suppression des modalités inutilisées d’un facteur

  1. rm.unused.levels <- function(x, v=NULL)
  2. {
  3. if (!is.data.frame(x)) x <- as.data.frame(x)
  4. # Les variables a traiter sont specifiees ?
  5. if (is.null(v))
  6. v <- names(x)
  7. # Pour chaque variable de type facteur, supression des levels inutilisés
  8. for (i in 1:length(x)) {
  9. if (is.factor(x[[i]]) & names(x)[i] %in% v)
  10. x[[i]] <- factor(x[[i]])
  11. }
  12. return(x)
  13. }

Télécharger

Il arrive parfois que l’on ait des facteurs avec des modalités non utilisées, par exemple après importation d’un fichier d’enquête ou après sélection d’un sous-échantillon. rm.unused.levels permet de ne conserver que les modalités d’un facteur attribuées à au moins une observation.

Répondre à cet article

modération a priori

Attention, votre message n’apparaîtra qu’après avoir été relu et approuvé.

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici
  • Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Retour haut de page
Site réalisé avec SPIP | Plan du site | Contact | Crédits | Mentions Légales | Suivre la vie du site RSS 2.0
Habillage visuel © Larma par Joseph Larmarange sous Licence Creative Commons Attribution 2.5 License