• Menu
    • Nos Formations
    • Nos Prestations
    • Les Astuces
Skip to content
Astuces et scripts R
Astuces et scripts R
Primary Navigation Menu
Menu
  • Abcd’R
  • Tous les scripts
    • Voir les articles
    • Proposer un Article
  • Formation au logiciel R
  • Contact

Les dates de formations à R, éligibles au CPF sont en lignes !

Voir nos formations

Comment calculer le nombre de données manquantes par lignes

Par vincent
Le janvier 30, 2019
Dans manipulation de données, tidyverse
Tagged na, nettoyage
Avec 0 Commentaire

Plusieurs façon de faire, à vous de choisir celle qui vous plait le plus 🙂

Fabriquons un petit jeu de données auquel nous souhaitons ajouter une colonne contenant le nombre ne NA sur chacune des lignes.

library(tidyverse)
dataset <- tribble(~a,~b,~c,
        1,NA,NA,
        NA,NA,NA,
        1,2,3,
        NA,3,NA
)

A l’ancienne

dataset$nb <- apply(dataset, MARGIN = 1, function(x){sum(is.na(x))})

avec du pmap et du mutate

dataset %>% mutate(nb = pmap(.,function(a,b,c){sum(is.na(a),is.na(b),is.na(c))}),
             nb= unlist(nb))

Mais c’est dommage de devoir spécifier a, b et c.

donc simplifions :

dataset %>% 
  mutate(nb = pmap_dbl(., function(...){sum(is.na(c(...)))}))

Cela reste à mon goût un peu trop verbeux

Avec rowSums

dataset %>% mutate(nb = rowSums(is.na(.)))

ça c’est propre et efficace

En utilisant le package {naniar} (coucou @colin ) (qui habille rowSums)

dataset %>% naniar::add_n_miss()

En espérant que cela vous soit utile.

2019-01-30
Article précédent: Comment supprimer les NA (valeurs manquantes) dans R avec dplyr ?
Article suivant: Comment lire un fichier shp (shapefile) avec {sf} dans R ?

Formation et consultance

Trouvez votre formation R sur-mesure chez ThinkR

-- Contactez-nous --

Catégories

Commentaires récents

  • Sébastien dans Comment effectuer des calculs de somme et de moyenne sur les colonnes ou les lignes d’une matrice ? colSums, rowSums, colMeans, rowMeans
  • Achraf Mazouz dans Comment effectuer des calculs de somme et de moyenne sur les colonnes ou les lignes d’une matrice ? colSums, rowSums, colMeans, rowMeans
  • Lou Sayd dans Coment alculer simplement la SEM dans R ? (Erreur Standard)
  • Nicolas dans Comment remplacer une chaîne de caractères ? string_replace_all(df, "pattern","replacement")
  • Vincent dans Comment comparer deux moyennes avec R grâce au test de Student ? t.test

Archives

Plan

  • Abcd’R
  • Tous les scripts
    • Proposer un Article
  • Ressources documentaires
    • Le logiciel R
    • Liste des interfaces graphiques
  • Formation au logiciel R
  • Contact
  • Politique de confidentialité

Flux ThinkR – Certification & Formation langage R

  • Déboguer une fonction avec debugonce() ou browser()
  • Dessinez pour gagner : L’impact des maquettes sur vos apps Shiny
  • Gérer et manipuler des dates en 2024 : une année pas comme les autres !
  • Retour vers le turfu : R, le web, et webR
  • Créer un package R et le versionner avec VSCode ? Mission possible !

Méta

  • Connexion
  • Flux des publications
  • Flux des commentaires
  • Site de WordPress-FR

ABCD'R (par ThinkR ) © 2025 - Confidentialité