Introduction à la déclaration Switch dans R

Considérons une situation où il existe plusieurs options sous la forme d'expressions et nous devons contrôler notre sortie de telle manière qu'elle compare la valeur de l'expression et les valeurs présentes dans la liste et transmette en conséquence la sortie. Pour cela, nous pouvons également utiliser des instructions If Else, mais il existe certaines restrictions comme les instructions If Else qui ne conviennent pas lorsqu'il existe une ramification à plusieurs voies (plusieurs options). Donc, ici, nous pouvons utiliser des instructions Switch dans r qui ont de multiples avantages, comme

  • Une instruction switch peut tester des expressions basées sur un objet String, une valeur List ou un entier unique, en gros, en termes plus simples, nous pouvons dire que les instructions switch sont les meilleures pour des valeurs de données fixes.
  • Les instructions Switch sont meilleures pour la ramification à plusieurs voies.
  • La vitesse de traitement du code est rapide lorsque nous utilisons des instructions switch (cela est visible lorsqu'il y a un nombre important de cas); généralement, les déclarations if-else ont pris du temps lorsqu'il y a un grand nombre de cas.
  • Les instructions switch sont moins vulnérables aux erreurs car elles sont beaucoup plus propres lorsque nous devons combiner des cas.

Définition

Une instruction switch comparera la valeur de l'expression et les valeurs présentes dans la liste et nous fournira la meilleure sortie qui répond à toutes les exigences. Nous allons maintenant voir une illustration où nous pouvons utiliser l'instruction switch.

Syntaxe:

La syntaxe de base dans R pour les instructions switch ressemble à ceci:

switch(expression, Value 1, Value 2, Value 3…. Value n)

Ici, le code comparera la valeur de l'expression avec les valeurs de la liste et la meilleure correspondance sera renvoyée en tant que sortie remplissant toutes les conditions de l'énoncé du problème.

Règles de déclaration de changement

Les règles applicables dans Switch Statement sont les suivantes:

1. Il n'y a pas de limite pour les déclarations de cas dans un commutateur comme vous pouvez former n nombres de déclarations de cas, la seule limitation est que chaque cas est suivi de la valeur à comparer ou de deux points où que se trouve la chaîne de caractères.

2. S'il existe plusieurs correspondances dans une instruction switch, la première instruction case correspondante est renvoyée en sortie.

Exemple 1

Code:

x <- switch("color", "color" = "red", "shape" = "square", "color" = "blue")
x

Production:

Code:

x <- switch("color", "color" = "blue", "shape" = "square", "color" = "red")
x

Production:

3. Si la valeur que nous devons évaluer dans notre code est un nombre et que la valeur numérique est hors limites (les valeurs sont supérieures au nombre d'éléments dans la liste ou inférieures à 1). Ensuite, le résultat qui nous est retourné est «NULL».

Exemple # 2

Code:

x <- switch(4, "Ball", "Bat", "Wickets")
x

Production:

Code:

x <- switch(0, "Ball", "Bat", "Wickets")
x

Production:

4. Si nous devons évaluer une chaîne de caractères, les chaînes de caractères doivent correspondre exactement aux noms des éléments.

Exemple # 3

Code:

x <- switch("color", "color" = "red", "shape" = "square")
x

Production:

Code:

x <- switch("coler", "color" = "red", "shape" = "square")
x

Production:

5. Nous n'obtiendrons une erreur comme résultat que s'il y a plus d'une instruction case avec une mauvaise orthographe ou que cette expression n'est pas dans la liste ou que la valeur correspondante de l'instruction case est manquante.

Organigramme de l'instruction Switch dans R

  • Si Expression = Case 1, STATEMENT 1 est exécuté.
  • Si Expression = Case 2, STATEMENT 2 est exécuté.
  • Si Expression = Case 3, STATEMENT 3 est exécuté.
  • Si le cas 1, le cas 2 et le cas 3 échouent, l'instruction par défaut est exécutée.

Cas d'utilisation de la déclaration Switch

Quelques cas où nous pouvons utiliser des instructions switch.

Type 1: si l'expression est un nombre

Code:

switch(2, "Ball", "Bat", "Wickets")

Production:

Code:

switch(3, "Ball", "Bat", "Wickets")

Production:

Dans l'exemple ci-dessus, nous avons une liste qui se compose de trois éléments (Ball, Bat et Wickets), la fonction d'instruction switch renverra l'élément correspondant à la valeur numérique que nous avons entrée comme expression.

Ici, nous devons suivre de près les règles lors de l'utilisation d'une instruction Switch, comme l'erreur très basique et courante est:

«Si la valeur évaluée est un nombre et que la valeur numérique est hors limites (les valeurs sont supérieures au nombre d'éléments de la liste ou inférieures à 1). Le résultat qui nous est retourné est «NULL».

Code:

x <- switch(4, "Ball", "Bat", "Wickets")
x

Production:

Type 2: si l'expression est une chaîne

Code:

switch("Wickets", "Ball" = "Red", "Bat" = "Rectangle", "Wickets" = "Out")

Production:

Le diagramme de flux de l'exemple ressemble à:

Type 3: Mix n Match

Exemple 1:

x= 1
y = 2
z = switch(x+y, "Hello Abhinav", "Hello Mayank", "Hello Naman", "Hello Hardik")

Ici, nous avons attribué des valeurs à x et y, puis nous ajoutons une expression dans l'instruction switch comme une équation.

Donc x + y = 1 + 2 = 3.

Ce qui signifie que la 3 e valeur de la liste apparaîtra en sortie. Dans notre exemple, la valeur 3 est «Bonjour Naman».

Code:

Et le code de l'exemple ci-dessus ressemble à ceci:

x= 1
y = 2
z = switch(x+y, "Hello Abhinav", "Hello Mayank", "Hello Naman", "Hello Hardik")
z

Production:

Exemple # 2:

Where x= 1 and y= 7
a = switch(paste(x, y, sep=""), "7"="Hello Abhinav", "12"="Hello Mayank", "17"="Hello Naman", "21"="Hello Hardik")

Lorsque nous exécutons cela dans R, nous obtiendrons.

Code:

x= 1
y= 7
a = switch(paste(x, y, sep=""), "7"="Hello Abhinav", "12"="Hello Mayank", "17"="Hello Naman", "21"="Hello Hardik")
a

Production:

Conclusion

  • Les instructions Switch sont plus faciles à lire.
  • Les instructions de commutation sont plus efficaces si nous les comparons avec l'instruction If-Else.
  • Les instructions Switch sont faciles à maintenir et à écrire.
  • Avec l'aide de la déclaration Switch, nous pouvons créer une table de saut.
  • Les instructions Switch nous aident à rendre le code volumineux très pratique, il est très facile de retrouver une erreur dans le code, le cas échéant.

Bien qu'il existe également des limitations, les instructions Switch ne fonctionnent pas avec les flottants et ne fonctionnent pas non plus avec les plages (sauf mention explicite).

Articles recommandés

Ceci est un guide de la déclaration Switch dans R. Ici, nous discutons des règles, de l'organigramme et des différents cas d'utilisation des instructions switch dans R avec des exemples. Vous pouvez également consulter les articles suivants pour en savoir plus -

  1. Instruction Switch en C
  2. Instruction Switch en C ++
  3. Instruction Switch en JavaScript
  4. Instruction Switch dans Matlab
  5. Instruction Switch en C #

Catégorie: