R est l'un des outils d'analyse les plus populaires. Mais en plus d'être utilisé pour l'analyse, R est également un langage de programmation.Avec sa croissance dans le secteur informatique, il existe une demande en plein essor de avec une compréhension de R comme à la fois, un outil d'analyse de données et un langage de programmation.Dans ce blog, je vais vous aider à comprendre les différents fondamentaux de la programmation R. Dans notre p revious Blog ,nous avons discuté des raisons pour lesquelles nous avons besoin d'analyses, de ce que sont l'analyse commerciale, pourquoi et qui utilise R.
Dans ce blog, nous comprendrons les concepts de base ci-dessous de la programmation R dans l'ordre suivant:
Vous pouvez passer par l'enregistrement du webinaire du langage de programmation R où notre instructeur a expliqué les sujets de manière détaillée avec des exemples qui vous aideront à mieux comprendre la programmation R.
Programmation R pour les débutants | Tutoriel du langage de programmation R | Edureka
Alors allons de l'avant et examinons le premier concept de programmation R - les variables.
Programmation R: Variables
Les variables ne sont rien d'autre qu'un nom à un emplacement mémoire contenant une valeur. Une variable dans R peut stocker des valeurs numériques, des valeurs complexes, des mots, des matrices et même une table. Surprenant, non?
Figure: Créationde variables
L'image ci-dessus nous montre comment les variables sont créées et comment elles sont stockées dans différents blocs de mémoire. En R, nous n'avons pas besoin de déclarer une variable avant de l'utiliser, contrairement à d'autres langages de programmation comme Java, C, C ++, etc.
Avançons et essayons de comprendre ce qu'est un type de données et les différents types de données pris en charge dans R.
Programmation R: types de données
Dans R, une variable elle-même n'est déclarée d'aucun type de données, elle obtient plutôt le type de données de l'objet R qui lui est assigné. Ainsi, R est appelé un langage typé dynamiquement, ce qui signifie que nous pouvons changer un type de données de la même variable encore et encore lors de son utilisation dans un programme.
interface de marqueur dans l'exemple java
Les types de données spécifient le type de valeur d'une variable et le type d'opérations mathématiques, relationnelles ou logiques qui peuvent lui être appliquées sans provoquer d'erreur. Il existe de nombreux types de données dans R, mais voici les plus fréquemment utilisés:
Parlons maintenant de chacun de ces types de données individuellement, à partir de vecteurs.
Vecteurs
Les vecteurs sont les objets de données R les plus élémentaires et il existe six types de vecteurs atomiques. Voici les six vecteurs atomiques:
Logique : Il est utilisé pour stocker une valeur logique comme VRAI ou FAUX .
Numérique : Il est utilisé pour stocker les nombres positifs et négatifs, y compris le nombre réel.
Par exemple: 25, 7.1145, 96547
Entier : Il contient toutes les valeurs entières, c'est-à-dire tous les nombres entiers positifs et négatifs.
Par exemple: 45,479, -856,479, 0
Complexe : Ils sont de la forme x + yi, où x et y sont numériques et i représente la racine carrée de -1.
Par exemple: 4 + 3i
Personnage : Il est utilisé pour stocker soit un seul caractère, un groupe de caractères (mots) ou un groupe de mots ensemble. Les caractères peuvent être définis entre guillemets simples ou doubles.
Par exemple: «Edureka», «R est amusant à apprendre».
En général, un vecteur est défini et initialisé de la manière suivante:
Vtr = c (2, 5, 11, 24) Ou Vtr<- c(2, 5, 11 , 24)
Allons de l'avant et comprenons d'autres types de données dans R.
liste
Les listes sont assez similaires aux vecteurs, mais les listes sont les objets R qui peuvent contenir des éléments de différents types tels que des nombres & moins, des chaînes, des vecteurs et une autre liste à l'intérieur.
Par exemple:
Vtr<- c('Hello', 'Hi','How are you doing') mylist <- list(Vtr, 22.5, 14965, TRUE) mylist
Production:
[[1]] [1] «Bonjour» «Salut» Comment faites-vous '[[2]] [1] 22,5 [[3]] [1] 14965 [[4]] [1] VRAI
Matrice
Matrix est l'objet R dans lequel les éléments sont disposés dans une disposition rectangulaire bidimensionnelle.
La syntaxe de base pour créer une matrice dans R est & moins
matrice (données, nrow, ncol, byrow, dimnames)
Où:
- Les données est le vecteur d'entrée qui devient les éléments de données de la matrice.
- nrow est le nombre de lignes à créer.
- ncol est le nombre de colonnes à créer.
- byrow est un indice logique. Si TRUE, les éléments vectoriels d'entrée sont organisés par ligne.
- dimname correspond aux noms attribués aux lignes et aux colonnes.
Exemple:
Mymatrix<- matrix(c(1:25), nrow = 5, ncol = 5, byrow = TRUE) Mymatrix
Production:
[, 1] [, 2] [, 3] [, 4] [, 5] [1,] 1 2 3 4 5 [2,] 6 7 8 9 10 [3,] 11 12 13 14 15 [4, ] 16 17 18 19 20 [5,] 21 22 23 24 25
ARRAY
Les tableaux dans R sont des objets de données qui peuvent être utilisés pour stocker des données dans plus de deux dimensions. Il prend des vecteurs comme entrée et utilise les valeurs dans le non paramètre pour créer un tableau.
La syntaxe de base pour créer un tableau dans R est & moins
array (données, dim, dimnames)
Où:
- Les données est le vecteur d'entrée qui devient les éléments de données du tableau.
- non est la dimension du tableau, où vous passez le nombre de lignes, de colonnes et le nombre de matrices à créer par les dimensions mentionnées.
- dimname correspond aux noms attribués aux lignes et aux colonnes.
Exemple:
Myarray<- array( c(1:16), dim=(4,4,2)) Myarray
Production:
, , un [, 1] [, 2] [, 3] [, 4] [1,] 1 5 9 13 [2,] 2 6 10 14 [3,] 3 7 11 15 [4,] 4 8 12 16 ,, 2 [, 1] [, 2] [, 3] [, 4] [1,] 1 5 9 13 [2,] 2 6 10 14 [3,] 3 7 11 15 [4,] 4 8 12 16
Trame de données
Une trame de données est une table ou une structure de type tableau bidimensionnelle dans laquelle chaque colonne contient les valeurs d'une variable et chaque ligne contient un ensemble de valeurspourchaque colonne. Vous trouverez ci-dessous certaines des caractéristiques d'une base de données qui doivent être prises en compte chaque fois que nous travaillons avec elles:
- Les noms de colonne doivent être non vides.
- Chaque colonne doit contenir la même quantité d'éléments de données.
- Les données stockées dans un bloc de données peuvent être de type numérique, factoriel ou caractère.
- Les noms de ligne doivent être uniques.
Exemple:
emp_id = c (100: 104) emp_name = c ('John', 'Henry', 'Adam', 'Ron', 'Gary') dept = c ('Sales', 'Finance', 'Marketing', 'HR ',' R & D ') données emp.<- data.frame(emp_id, emp_name, dept) emp.data
Production:
emp_id emp_name dept 1100 John Sales 2101 Henry Finance 3102 Adam Marketing 4 103 Ron HR 5104 Gary R & D
Maintenant que nous avons compris les types de données de base de R, il est temps de plonger profondément dans R en comprenant les concepts d’opérateurs de données.
Programmation R: opérateurs de données
Il y a principalement 4 opérateurs de données dans R, ils sont comme ci-dessous:
Opérateurs arithmétiques : Ces opérateurs nous aident à effectuer les opérations arithmétiques de base comme l'addition, la soustraction, la multiplication, etc.
Prenons l'exemple suivant:
num1 = 15 num2 = 20 num3 = 0 #addition num3 = num1 + num2 num3 #substraction num3 = num1 - num2 num3 #multiplication num3 = num1 * num2 num3 #division num3 = num1 / num2 num3 #modulus num3 = num1 %% num2 num3 #exponent num1 = 5 num2 = 3 num3 = num1 ^ num2 num3 #floor division num3 = num1% /% num2 num3
Production:
[1] 35 [quinze [1] 300 [1] 0,75 [1] 15 [1] 125 [Onze
Opérateurs relationnels : Ces opérateurs nous aident à effectuer les opérations relationnelles comme vérifier si une variable est supérieure, inférieure ou égale à une autre variable. La sortie d'une opération relationnelle est toujours une valeur logique.
Considérez les exemples suivants:
num1 = 15 num2 = 20 #égal à num3 = (num1 == num2) num3 #not égal à num3 = (num1! = num2) num3 # inférieur à num3 = (num1 num2) num3 # inférieur à égal à num1 = 5 num2 = 20 num3 = (num1 = num2) num3
Production:
[1] FAUX [1] VRAI [1] VRAI [1] FAUX [1] VRAI [1] FAUX
Opérateurs d'affectation: Ces opérateurs sont utilisés pour affecter des valeurs aux variables dans R. L'affectation peut être effectuée en utilisant soit l'opérateur d'affectation(<-) ou égal à l'opérateur (=). La valeur de la variable peut être affectée de deux manières: affectation à gauche et affectation à droite.
LogiqueLes opérateurs: Ces opérateurs comparent les deux entités et sont généralement utilisés avec des valeurs booléennes (logiques) telles que «et», «ou»et'ne pas'.
Programmation R: instructions conditionnelles
- Si déclaration: L'instruction If vous aide à évaluer une seule expression dans le cadre du flux. Pour effectuer cette évaluation, il vous suffit d'écrire le mot clé If suivi de l'expression à évaluer. L'organigramme ci-dessous vous donnera une idée de la façon dont l'instruction If contrôle le flux d'un code: Prenons l'exemple suivant:
num1 = 10 num2 = 20 si (num1<=num2){ print('Num1 is less or equal to Num2')
Production:
[1] 'Num1 est inférieur ou égal à Num2'
- Else If Statement: L'instruction Else if vous aide à étendre les branches au flux créé par l'instruction If et vous donne la possibilité d'évaluer plusieurs conditions en créant de nouvelles branches de flux. Le flux ci-dessous vous donnera une idée de la manière dont l'instruction else if branche le flux du code:
Prenons l'exemple suivant:Num1 = 5 Num2 = 20 if (Num1 Num2) {print ('Num2 is lesser than Num1')} else if ('Num1 == Num2) {print (' Num1 and Num2 are Equal ')}
Production:
[1] 'Num1 est inférieur à Num2'
- Autre déclaration: L'instruction else est utilisée lorsque toutes les autres expressions sont vérifiées et jugées non valides. Ce sera la dernière instruction exécutée dans le cadre de la branche If - Else if. Le flux ci-dessous vous donnera une meilleure idée de la manière dont Else modifie le flux du code:
Prenons l'exemple suivant:
Num1 = 5 Num2 = 20 if (Num1 Num2) {print ('Num2 is lesser than Num1')} else print ('Num1 and Num2 are Equal')}
Production:
[1] 'Num1 et Num2 sont égaux'
Programmation R: boucles
Une instruction de boucle nous permet d'exécuter une instruction ou un groupe d'instructions plusieurs fois. Il existe principalement 3 types de boucles dans R:
- répéter la boucle : Il répète une instruction ou un groupe d'instructions alors qu'une condition donnée est VRAIE. La boucle de répétition est le meilleur exemple d'une boucle contrôlée par sortie où le code est d'abord exécuté, puis la condition est vérifiée pour déterminer si le contrôle doit être à l'intérieur de la boucle ou en sortir. Voici le flux de contrôle dans une boucle de répétition:
Regardons l'exemple ci-dessous pour comprendre comment nous pouvons utiliser la boucle de répétition pour ajouter n nombres jusqu'à ce que la somme dépasse 100:x = 2 répéter {x = x ^ 2 print (x) if (x> 100) {break}
Production:
[1] 4 [1] 16 [1] 256
- while Loop : jet aide à répéter une déclaration ou un groupe d'instructions alors qu'une condition donnée est VRAI. Alors que la boucle, comparée à la boucle de répétition, est légèrement différente, il s'agit d'un exemple de boucle contrôlée d'entrée où la condition est vérifiée pour la première fois et ce n'est que si la condition s'avère vraie que le contrôle est délivré à l'intérieur de la boucle pour exécuter le code . Voici le flux de contrôle dans une boucle while:
Regardons l'exemple ci-dessous pour ajouter la somme des carrés des 10 premiers nombres et comprendre comment la boucle while fonctionne mieux:chaîne en date convertir en java
num = 1 sumn = 0 tandis que (num<=11){ sumn =(sumn+ (num^2) num = num+1 print(sumn) }
Production:[Onze [quinze [1] 14 [1] 30 [1] 55 [1] 91 [1] 140 [1] 204 [1] 285 [1] 385 [1] 506
- pour Loop : Il est utilisé pour répéter une instruction ou un groupe de pour un nombre fixe de fois. Contrairement aux boucles repeat et while, la boucle for est utilisée dans les situations où nous sommes conscients du nombre de fois que le code doit être exécuté au préalable. C'est similaire à la boucle while où la condition est d'abord vérifiée et ensuite seulement le code écrit à l'intérieur est exécuté. Voyons maintenant le flux de contrôle de la boucle for:
Regardons maintenant un exemple où nous utiliserons la boucle for pour afficher les 10 premiers nombres:
pour (x en 1:10) {print (x)}
Production:
[Onze [1] 2 [1] 3 [1] 4 [quinze [1] 6 [1] 7 [1] 8 [1] 9 [1] 10
Programmation R: Fonctions
Une fonction est un bloc de code organisé et réutilisable utilisé pour effectuer une seule action associée. Il existe principalement deux types de fonctions dans R:
Fonctions prédéfinies : Ce sont des fonctions intégrées qui peuvent être utilisées par l'utilisateur pour faire son travail easyier. Par exemple: mean( X) , sum( X) , sqrt ( X ), plus dur( X ), etc.
Défini par l'utilisateur Les fonctions: Ces fonctions sont créées par l'utilisateur pour répondre à une exigence spécifique de l'utilisateur. Voici la syntaxe pour créer une fonction dansR:
func nom_tion <– fonction (arg_1, arg_2 et hellip){ // Corps de fonction }
Prenons l'exemple suivant d'une fonction simple pour générer la somme des carrésde2 numéros:
sum_of_square<- function(x,y) { x^2 + y^2 } sum_of_sqares(3,4)
Sortie: [1] 25
J'espère que vous avez apprécié la lecture de ce blog de programmation R. Nous avons couvert toutes les bases de R dans ce didacticiel, vous pouvez donc commencer à vous entraîner maintenant. Après ce blog de programmation R, je proposerai plus de blogs sur R pour Analytics, alors restez à l'écoute.
Maintenant que vous avez compris les bases de R, consultez le par Edureka, une entreprise d'apprentissage en ligne de confiance avec un réseau de plus de 250 000 apprenants satisfaits répartis dans le monde entier. La formation Data Analytics with R d'Edureka vous aidera à acquérir une expertise en programmation R, manipulation de données, analyse de données exploratoire, visualisation de données, exploration de données, régression, analyse des sentiments et utilisation de RStudio pour des études de cas réelles sur le commerce de détail, les médias sociaux.
Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de ce blog «Programmation R» et nous vous répondrons dans les plus brefs délais.