Manipulation de données dans R : qu'est-ce que c'est, les variables, l'utilisation du package dplyr

Publié: 2020-03-26

Table des matières

introduction

Outre le personnel et l'infrastructure, les données sont la nouvelle pierre angulaire de toute entreprise. Des grandes entreprises aux petites industries, les données sont le carburant qui alimente leurs activités. Ces données sont associées à leurs transactions commerciales quotidiennes, aux données d'achat des clients, aux données de vente, aux tableaux financiers, aux statistiques commerciales, aux campagnes de marketing et bien plus encore. C'est pourquoi Tim O'Reilly, fondateur d'O'Reilly Media, a déclaré que nous entrons dans une situation où les données vont être plus importantes que les logiciels.

Mais que faire de tant de données ? Les entreprises utilisent ces données pour obtenir des informations précieuses sur leurs performances commerciales. Ils embauchent des data scientists qui manipulent les données dans R pour donner un sens à ces données. Par exemple, comprendre les données de vente et de marketing de l'année écoulée leur donnera une idée de leur position. Une étude récente a montré que le marché de l'analyse de données devrait atteindre 77,6 milliards de dollars d'ici 2023.

Les scientifiques des données sont embauchés pour donner un sens à ces données par un processus appelé manipulation de données.

Qu'est-ce que la manipulation de données ?

La manipulation des données est le processus d'organisation des données pour mieux les lire et les comprendre. Par exemple, les responsables de l'entreprise peuvent obtenir des données sur les clients à partir de leurs systèmes et journaux de bord. La plupart du temps, ces données seront stockées dans un logiciel CRM (Customer Relationship Management) et des feuilles Excel. Mais cela peut ne pas être organisé correctement. La manipulation des données comprend des moyens d'organiser toutes ces données, par exemple selon l'ordre alphabétique.

Les données peuvent être triées selon la date, l'heure, le numéro de série ou tout autre champ. Les employés du service comptable d'une entreprise utilisent les données pour déterminer les tendances des ventes, les préférences des utilisateurs, les statistiques du marché et les prix des produits. Les analystes financiers utilisent les données pour comprendre les performances du marché boursier, les tendances et les meilleures actions dans lesquelles investir.

De plus, les données du serveur Web peuvent être utilisées pour comprendre le trafic du site Web. Dans cette ère technologique, l'IoT est un exemple de technologie où les données proviennent de capteurs attachés aux machines. Ces données sont utilisées pour déterminer les performances de la machine et si elle présente des défauts. La manipulation des données est cruciale dans l'IoT, car le marché atteindra 81,67 milliards de dollars d'ici 2025.

La manipulation de données est couramment effectuée à l'aide d'un langage de programmation appelé R. Connaissons un peu mieux le langage.

C'est quoi R ?

Pour comprendre la manipulation de données dans R , vous devez connaître les bases de R. Il s'agit d'un langage de programmation moderne utilisé pour l'analyse de données, le calcul statistique et l'intelligence artificielle. Le langage a été créé en 1993 par Ross Ihaka et Robert Gentleman . De nos jours, les chercheurs, les analystes de données, les scientifiques et les statisticiens utilisent R pour analyser, nettoyer et visualiser les données.

R dispose d'un vaste catalogue composé de méthodes graphiques et statistiques pouvant prendre en charge l'apprentissage automatique, la régression linéaire, l'inférence statistique et les séries chronologiques. Sous la licence publique générale GNU, le langage est librement disponible pour les systèmes d'exploitation tels que Windows, Mac et Linux. Il est compatible avec la plate-forme, ce qui signifie que le code R écrit sur une plate-forme peut être facilement exécuté sur une autre.

R est désormais considéré comme le principal langage de programmation pour la science des données. Mais c'est un langage complet car vous pouvez l'utiliser pour le développement de logiciels ainsi que pour des tâches complexes telles que la modélisation statistique. Vous pouvez développer des applications Web en utilisant son package RShiny.

C'est un langage si puissant que certaines des meilleures entreprises du monde telles que Google et Facebook l'utilisent.

Voyons quelques-unes des fonctionnalités les plus importantes de R :

  • Il dispose de CRAN (Comprehensive R Archive Network) qui est un référentiel contenant plus de 10 000 packages R, disposant de toutes les fonctionnalités requises pour travailler avec des données.
  • C'est un langage de programmation open-source . Cela signifie que vous pouvez le télécharger gratuitement et même contribuer à son développement, mettre à jour ses fonctionnalités et personnaliser ses fonctionnalités existantes
  • Vous pouvez créer des visualisations de haute qualité à partir des données disponibles à partir des bibliothèques graphiques utiles de R telles que ggplot2 et plotly
  • R est un langage très rapide. Comme il s'agit d'un langage de programmation interprété , il n'y a pas besoin d'un compilateur pour convertir les programmes R en code exécutable, et donc un script R s'exécute plus rapidement
  • R peut effectuer une variété de calculs compliqués en un tournemain, consistant en des tableaux, des trames de données et des vecteurs . Il existe de nombreux opérateurs pour effectuer ces calculs
  • Il gère les données structurées et non structurées. Des extensions pour Big Data et SQL sont disponibles pour traiter tous les types de données
  • R a une communauté en croissance constante qui a les esprits les plus brillants. Ces personnes contribuent constamment au langage de programmation en développant des bibliothèques et des mises à jour
  • Vous pouvez facilement intégrer R à d'autres langages de programmation tels que Python, Java et C++. Vous pouvez également le combiner avec Hadoop pour l'informatique distribuée

Maintenant que vous avez rassemblé les bases du langage de programmation R, plongeons-nous dans les choses passionnantes !

Variables dans R

Lors de la programmation dans R ou de toute manipulation de données dans R , vous devez gérer des variables. Les variables sont utilisées pour stocker des données qui peuvent être sous la forme de chaînes, d'entiers, d'entiers à virgule flottante ou simplement de valeurs booléennes. Ces variables réservent un espace en mémoire pour son contenu. Contrairement aux langages de programmation traditionnels, les variables dans R sont affectées avec les objets R .

Les variables n'ont pas de type de données, mais obtiennent le type de l'objet R auquel elles sont affectées. Les objets R les plus populaires sont :

  • Vecteurs
  • Listes
  • Tableaux
  • Matrices
  • Les facteurs
  • Trames de données

Ces structures de données sont extrêmement importantes pour la manipulation de données dans R et l'analyse de données. Examinons-les un peu plus en détail pour comprendre la manipulation de base des données :

Vecteurs

Ce sont les structures de données les plus élémentaires et sont utilisées pour les données unidimensionnelles. Les types de vecteurs atomiques sont :

  • Entier
  • Logique
  • Numérique
  • Complexe
  • Personnage

Lorsque vous créez une valeur dans R, elle devient un vecteur à un seul élément de longueur 1. Par exemple,

imprimer("ABC"); # vecteur d'élément unique de type caractère

print(10.5) # vecteur à élément unique de type double

Les éléments dans les vecteurs sont accessibles à l'aide de leurs numéros d'index. Les positions d'index dans les vecteurs commencent à partir de 1. Par exemple,

t <- c("lu", "mar", "mer", "sam")

u <- t[c(1,2,3)]

imprimer (u)

Le résultat sera "Lun" "Mar" "Mer"

Listes

Ce sont des objets dans R qui sont utilisés pour contenir différents types d'éléments à l'intérieur. Ceux-ci peuvent être des entiers, des chaînes et même des listes. Si les données ne peuvent pas être conservées dans un bloc de données ou un tableau, c'est la meilleure option. Les listes peuvent également contenir une matrice. Vous pouvez créer des listes en utilisant la méthode list().

Utilisez le code suivant pour créer une liste :

list_data <- list("Noir", "Vert", c(11,4,14), VRAI, 31.22, 120.5)

imprimer(list_data)

Les éléments de liste sont accessibles à l'aide d'indices de liste.

print(list_data[1]) #le code imprime le premier élément de la liste

Exemple de manipulation de données avec des listes :

list_data[4] <- NULL # ce code supprime le dernier élément de la liste si elle a 4 éléments

Lire : R vs Python pour la science des données

Tableaux

Les tableaux sont des objets qui peuvent être utilisés pour stocker un seul type de données. Les données de plus de deux dimensions peuvent être stockées dans des tableaux. Pour cela, vous devez utiliser la fonction array() qui prend les vecteurs en entrée. Il utilise la valeur du paramètre dim pour créer le tableau.

Par exemple, regardez le code suivant :

vector_result <- tableau(c(vecteurA,vecteurB),dim = c(3,3,2))

impression(vecteur_résultat)

Matrices

Dans ces objets R, les éléments sont organisés selon une disposition en 2 dimensions. Les matrices contiennent des éléments de types atomiques similaires. Celles-ci sont avantageuses lorsque les éléments appartiennent à une seule classe. Des matrices ayant des éléments numériques sont créées pour des calculs mathématiques. Vous pouvez créer des matrices en utilisant la fonction matrix().

La syntaxe de base pour créer une matrice est donnée ci-dessous :

matrice (données, nrow, ncol, byrow, dimnames)

  • Données - Il s'agit du vecteur d'entrée qui devient l'élément de données de la matrice
  • Nrow - C'est le nombre de lignes que vous voulez créer
  • Ncol - C'est le nombre de colonnes que vous voulez créer
  • Byrow – C'est un indice logique. Si sa valeur est VRAI, les éléments du vecteur seront rangés par ligne
  • Dimname – Noms donnés aux colonnes et aux lignes

Les facteurs

Ces objets R sont utilisés pour catégoriser les données et les stocker sous forme de niveaux. Ils sont bons pour la modélisation statistique et l'analyse des données. Les entiers et les chaînes peuvent être stockés dans des facteurs. Vous pouvez utiliser la fonction factor() pour créer un facteur en fournissant un vecteur comme entrée à la méthode.

Trames de données

Il a une structure bidimensionnelle comme un tableau comportant des lignes et des colonnes. Ici, chaque ligne a un ensemble de valeurs appartenant à chaque colonne. Les colonnes contiennent la valeur d'une variable. Ils sont utilisés pour représenter les données des feuilles de calcul. Ceux-ci peuvent être utilisés pour stocker des données de type facteur, numérique ou caractère.

Un bloc de données a les caractéristiques suivantes :

  • Les noms de lignes doivent être uniques
  • Les noms de colonne doivent être non vides
  • Le nombre d'éléments de données dans chaque colonne doit être le même

Manipulation de données dans R

Lors de la manipulation de données dans R , la première étape consiste à créer de petits échantillons de données à partir d'un énorme ensemble de données. Ceci est fait car l'ensemble de données complet ne peut pas être analysé à la fois. Habituellement, les analystes de données créent un sous-ensemble représentatif de l'ensemble de données. Cela les aide à identifier les tendances et les modèles dans l'ensemble de données plus large. Ce processus d'échantillonnage est également appelé sous- ensemble .

Les différentes manières de créer un sous-ensemble dans R sont les suivantes :

  • $ - Ceci sélectionne un seul élément de données et son résultat est toujours un vecteur
  • [[ - Cet opérateur de sous-ensemble renvoie également un seul élément, mais vous pouvez faire référence aux éléments par leur position

  • [ – Cet opérateur est utilisé pour renvoyer plusieurs éléments de données

Certaines des fonctions de base pour la manipulation de données dans R sont :

fonction sample()

Comme son nom l'indique, la méthode sample() est utilisée pour créer des échantillons de données à partir d'un ensemble de données plus important. Avec cette commande, vous mentionnez le nombre d'échantillons que vous souhaitez tirer de l'ensemble de données ou d'un vecteur. La syntaxe de base est la suivante :

échantillon(x, taille, remplacer = FAUX, prob = NULL)

x - Cela peut être un vecteur ou un ensemble de données de plusieurs éléments à partir desquels l'échantillon doit être choisi

taille - Il s'agit d'un entier positif qui indique le nombre d'éléments à sélectionner

remplacer - Cela peut être vrai ou faux, que vous souhaitiez l'échantillonnage avec ou sans remplacement

prob - C'est un argument utilisé pour fournir un vecteur de poids pour obtenir les éléments du vecteur qui est échantillonné

Fonction tableau()

Cette fonction crée une table de fréquence utilisée pour calculer le nombre de valeurs uniques d'une variable particulière. Par exemple, créons un tableau de fréquence avec l'ensemble de données de l'iris :

table(iris$Espèce)

Le code écrit ci-dessus crée un tableau décrivant les types d'espèces dans l'ensemble de données d'iris.

dupliqué()

La méthode duplicated() est utilisée pour identifier et supprimer les valeurs en double d'un ensemble de données. Il prend un vecteur ou un bloc de données comme argument et renvoie True pour les éléments en double. Par exemple,

dupliqué(c(1,1,3))

Cela vérifiera lesquels de ces éléments sont des doublons et renverra True ou False.

A lire aussi : Arbre de décision en R

Manipulation de données dans R à l'aide du package dplyr

R fournit un package simple et facile à utiliser appelé dplyr pour la manipulation de données. Le package contient des méthodes intégrées pour la manipulation, l'exploration et la transformation des données. Voyons quelques-unes des fonctions les plus importantes de ce package :

sélectionner()

La méthode select() est l'une des fonctions de base pour la manipulation de données dans R . Cette méthode est utilisée pour sélectionner des colonnes dans R. Grâce à cela, vous pouvez sélectionner des données comme avec son nom de colonne. Les colonnes peuvent être sélectionnées en fonction de certaines conditions. Supposons que nous voulions sélectionner les 3 ème et 4 ème colonnes d'un bloc de données appelé myData, le code sera :

select(mesDonnées,3:4)

filtre()

Cette méthode est utilisée pour filtrer les lignes d'un ensemble de données qui correspondent à des critères spécifiques. Cela peut fonctionner comme select(), vous passez d'abord le bloc de données, puis une condition séparée par une virgule.

Par exemple, si vous souhaitez filtrer les colonnes contenant des voitures de couleur rouge dans un ensemble de données, vous devez écrire :

filtre(voitures, couleur==”Rouge”)

En conséquence, les lignes correspondantes seront affichées.

subir une mutation()

Vous pouvez utiliser la méthode mutate() pour créer de nouvelles colonnes dans un ensemble de données tout en préservant les anciennes. Ces colonnes peuvent être créées en spécifiant une condition. Par exemple,

muter (mtcars, mtcars_new_col = mpg / cyl)

Dans cette commande, dans le jeu de données mtcars, une nouvelle colonne est créée mtcars_new_col qui contient les valeurs de la colonne mpg divisées par la colonne cyl.

organiser()

Ceci est utilisé pour trier les lignes dans l'ordre croissant ou décroissant, en utilisant une ou plusieurs variables. Au lieu d'appliquer la méthode desc(), vous pouvez ajouter un signe moins (-) avant la variable de tri. Cela indiquera l'ordre décroissant du tri. Par exemple,

organiser (mon_ensemble de données, -Sepal.Length)

par groupe()

La méthode group_by() est utilisée pour regrouper les observations dans un ensemble de données par une ou plusieurs variables.

résumer()

La fonction summarise() est utile pour déterminer des informations sur les données telles que la moyenne, la médiane et le mode. Il est utilisé avec des données groupées créées par une autre méthode group_by. summarise() aide à réduire plusieurs valeurs en une seule.

fusionner()

La méthode merge() combine ou fusionne des ensembles de données. Ceci est utile pour regrouper plusieurs sources de données d'entrée ensemble.

La méthode vous offre 4 façons de fusionner des ensembles de données . Ils sont mentionnés ci-dessous :

  • Jointure naturelle - Ceci est utilisé pour conserver les lignes qui correspondent à la condition spécifiée dans les trames de données
  • Jointure externe complète - Cela fusionne et stocke toutes les lignes des deux blocs de données
  • Jointure externe gauche - Cela stocke toutes les lignes d'un bloc de données A et celles de B qui correspondent
  • Jointure externe droite - Cela stocke toutes les lignes d'un bloc de données B et celles de A qui correspondent

renommer_si()

Il s'agit d'une fonction que vous pouvez utiliser pour renommer les colonnes d'un bloc de données lorsque la condition spécifiée est satisfaite.

renommer tous()

Ceci est utilisé pour renommer toutes les colonnes d'un bloc de données sans spécifier de condition.

Gagnez des cours de science des données dans les meilleures universités du monde. Rejoignez nos programmes Executive PG, Advanced Certificate Programs ou Masters Programs pour accélérer votre carrière.

Opérateur de tuyauterie

L'opérateur de conduite est disponible dans des packages tels que magrittr et dplyr pour simplifier votre code global. L'opérateur vous permet de combiner plusieurs fonctions ensemble. Désigné par le symbole %>%, il peut être utilisé avec des méthodes populaires telles que summarise(), filter(), select() et group_by() lors de la manipulation de données dans R.

Outre dplyr, il existe de nombreux autres packages dans CRAN pour la manipulation de données dans R . En effet, vous trouverez plus de 7000 packages pour réduire votre codage mais aussi vos erreurs. Beaucoup de ces packages sont créés par des développeurs experts, vous êtes donc entre de bonnes mains. Ceux-ci inclus:

  • data.table
  • lubrifier
  • ggplot2
  • lecteur
  • remodeler2
  • ranger

Conclusion

Si vous êtes un débutant dans la manipulation de données dans R , vous pouvez opter pour les fonctions de base intégrées disponibles dans R. Celles-ci incluent des méthodes telles que with(), within(), duplicated(), cut(), table(), sample() et sort(). Mais ils sont chronophages et répétitifs. Ce n'est pas une option très efficace.

Ainsi, la meilleure façon d'avancer est d'utiliser le grand nombre de packages du CRAN tels que dplyr. Ceux-ci sont super utiles et rendent vos programmes plus efficaces.

Quel package est utile pour la manipulation de données dans R ?

Le processus de manipulation des données est utilisé pour modifier les données disponibles et les rendre plus faciles à lire tout en les rendant plus organisées. Il y a souvent beaucoup d'erreurs et d'inexactitudes de la part des machines qui ont collecté des données. La manipulation des données vous permet de supprimer ces inexactitudes et de fournir des données plus précises.

Il existe de nombreuses façons d'effectuer des manipulations de données dans R, telles que l'utilisation de packages tels que ggplot2, readr, dplyr, etc. et en utilisant des fonctions de base R telles que within(), with(), etc. Cependant, le package dplyr est considéré comme très utile pour la manipulation de données dans R. Ce package se compose de diverses fonctions spécialement conçues pour la manipulation de données, et il permet aux données d'être traitées plus rapidement par rapport aux autres méthodes et packages.

Quel est le but du package dplyr dans R ?

Le package dplyr est connu pour être le meilleur pour la manipulation de données dans R avec une efficacité maximale. Auparavant, il y avait ce paquet appelé plyr, et qui a été itéré pour former dplyr. Désormais, dplyr se concentre entièrement sur les trames de données. C'est pourquoi il est beaucoup plus rapide, possède une API meilleure et cohérente, et est également assez facile à utiliser.

Le package dplyr fonctionne pour tirer le meilleur parti des données disponibles avec des performances améliorées par rapport aux autres packages de manipulation de données dans R.

Comment pouvez-vous manipuler les données ?

Afin d'effectuer la manipulation des données, vous devez effectuer certaines étapes dans un ordre général. Suivez les étapes ci-dessous :

1. Tout d'abord, vous aurez besoin d'une base de données créée à partir de sources de données.
2. Ensuite, vous devez nettoyer, réorganiser et restructurer les données disponibles avec la manipulation des données.
3. Maintenant, vous devez développer une base de données sur laquelle vous allez travailler.
4. Ici, vous pourrez fusionner, supprimer et modifier les informations disponibles.
5. Enfin, analysez les données disponibles et générez-en des informations utiles.