Wprowadzenie do instrukcji Switch w R

Rozważmy sytuację, w której istnieje wiele opcji w postaci wyrażeń i musimy kontrolować nasze wyniki w taki sposób, aby porównywał wartość wyrażenia i wartości obecne na liście i odpowiednio przekazywał dane wyjściowe. W tym celu możemy również użyć instrukcji If Else, ale istnieją pewne ograniczenia, takie jak instrukcje If Else, które nie są odpowiednie, gdy istnieje rozgałęzienie wielostronne (wiele opcji). Więc tutaj możemy użyć instrukcji Switch wr, które mają wiele zalet, takich jak

  • Instrukcja switch może testować wyrażenia w oparciu o obiekt String, wartość List lub pojedynczą liczbę całkowitą, mówiąc najprościej mówiąc, możemy powiedzieć, że instrukcje switch są najlepsze dla stałych wartości danych.
  • Instrukcje przełączania są lepsze w przypadku rozgałęzień wielokierunkowych.
  • Szybkość przetwarzania kodu jest duża, gdy używamy instrukcji switch (jest to widoczne, gdy istnieje znaczna liczba przypadków); ogólnie rzecz biorąc, stwierdzenia if-else zajęły dużo czasu, gdy istnieje duża liczba spraw.
  • Instrukcje Switch są mniej podatne na błędy, ponieważ są znacznie bardziej przejrzyste, gdy musimy łączyć przypadki.

Definicja

Instrukcja switch porówna wartość wyrażenia i wartości znajdujące się na liście i zapewni nam najlepsze wyniki spełniające wszystkie wymagania. Teraz zobaczymy ilustrację, w której możemy użyć instrukcji switch.

Składnia:

Podstawowa składnia w R dla instrukcji switch wygląda następująco:

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

W tym przypadku kod porówna wartość wyrażenia z wartościami na liście, a najlepsze dopasowanie zostanie zwrócone jako wynik, który spełni każdy warunek instrukcji problemu.

Zasady oświadczenia o zamianie

Zasady obowiązujące w instrukcji Switch to:

1. Nie ma limitu instrukcji case w przełączniku, tak jak możesz utworzyć n liczb instrukcji case, jedynym ograniczeniem jest to, że po każdym case następuje wartość do porównania lub dwukropek, gdziekolwiek znajduje się łańcuch znaków.

2. Jeśli w instrukcji switch występuje więcej niż jedno dopasowanie, pierwsza instrukcja case w dopasowaniu jest zwracana jako wynik.

Przykład 1

Kod:

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

Wynik:

Kod:

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

Wynik:

3. Jeśli wartość, którą musimy oszacować w naszym kodzie, to liczba, a wartość liczbowa jest poza zakresem (wartości są większe niż liczba pozycji na liście lub mniejsze niż 1). Następnie wynik jest zwracany do „NULL”.

Przykład nr 2

Kod:

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

Wynik:

Kod:

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

Wynik:

4. Jeśli musimy ocenić ciąg znaków, to ciągi znaków powinny być dokładnie dopasowane do nazw elementów.

Przykład nr 3

Kod:

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

Wynik:

Kod:

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

Wynik:

5. W rezultacie otrzymamy błąd tylko wtedy, gdy istnieje więcej niż jedna instrukcja case z niepoprawną pisownią lub wyrażenie nie znajduje się na liście lub brakuje odpowiedniej wartości instrukcji case.

Schemat przepływu instrukcji Switch w R

  • Jeśli wyrażenie = przypadek 1, wykonywane jest OŚWIADCZENIE 1.
  • Jeśli Wyrażenie = Przypadek 2, WYKONANIE 2 jest wykonywane.
  • Jeśli wyrażenie = przypadek 3, wykonywane jest OŚWIADCZENIE 3.
  • Jeśli Przypadek 1, Przypadek 2 i Przypadek 3 zawiodą, wówczas wykonywana jest Instrukcja Domyślna.

Użyj instrukcji Cases of Switch

Niektóre przypadki, w których możemy użyć instrukcji switch.

Wpisz 1: Jeśli wyrażenie jest liczbą

Kod:

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

Wynik:

Kod:

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

Wynik:

W powyższym przykładzie mamy listę składającą się z trzech elementów (Ball, Bat i Furtki), funkcja instrukcji switch zwróci odpowiedni element do wartości liczbowej, którą wprowadziliśmy jako wyrażenie.

Tutaj musimy ściśle przestrzegać zasad, używając instrukcji Switch, podobnie jak bardzo podstawowy i powszechny błąd:

„Jeśli oszacowana wartość jest liczbą, a wartość liczbowa jest poza zakresem (wartości są większe niż liczba pozycji na liście lub mniejsze niż 1). Zwrócony nam wynik to „NULL”.

Kod:

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

Wynik:

Typ 2: Jeśli wyrażenie jest ciągiem

Kod:

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

Wynik:

Schemat przepływu dla przykładu wygląda następująco:

Typ 3: Mix n Match

Przykład 1:

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

Tutaj przypisaliśmy niektóre wartości do xiy, a następnie dodajemy wyrażenie w instrukcji switch jako równanie.

Więc x + y = 1 + 2 = 3.

Co oznacza, że ​​trzecia wartość na liście pojawi się jako wynik. W naszym przykładzie wartością 3 jest „Hello Naman”.

Kod:

A kod dla powyższego przykładu wygląda następująco:

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

Wynik:

Przykład 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")

Kiedy uruchomimy to w R, otrzymamy.

Kod:

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

Wynik:

Wniosek

  • Instrukcje Switch są łatwiejsze do odczytania.
  • Instrukcje przełączania są bardziej wydajne, jeśli porównamy je z instrukcją If-Else.
  • Instrukcje Switch są łatwe w utrzymaniu i pisaniu.
  • Za pomocą instrukcji Switch możemy wykonać tabelę skoków.
  • Instrukcje switch pomagają nam uczynić duży kod bardzo przydatnym, bardzo łatwo jest wyśledzić ewentualny błąd w kodzie.

Chociaż istnieją pewne ograniczenia, takie jak instrukcje Switch nie działają z liczbami zmiennoprzecinkowymi, a także nie działają z zakresami (chyba że wyraźnie zaznaczono inaczej).

Polecane artykuły

Jest to przewodnik po instrukcji Switch w R. Tutaj omawiamy przykłady, schemat blokowy i różne przypadki użycia instrukcji Switch w R z przykładami. Możesz także przejrzeć następujące artykuły, aby dowiedzieć się więcej -

  1. Instrukcja zamiany w C
  2. Instrukcja Switch w C ++
  3. Instrukcja Switch w JavaScript
  4. Instrukcja Switch w Matlabie
  5. Instrukcja Switch w C #

Kategoria: