Uvod u preklopnu izjavu u R

Razmotrimo situaciju u kojoj postoji više opcija u obliku izraza i moramo kontrolirati svoj izlaz na takav način da će on uspoređivati ​​vrijednost izraza i vrijednosti prisutne na popisu te prema tome prenositi izlaz. Za to možemo upotrijebiti i stavke If Else, ali postoje i neka ograničenja poput If Else izjave nisu prikladne kada postoje višestruke grananje (više opcija). Dakle, ovdje možemo koristiti Switch izjave u r koji imaju višestruke prednosti, poput

  • Izjava o prekidaču može testirati izraze na temelju objekta String, List liste ili pojedinačnog cijelog broja, u osnovi, jednostavnijim riječima, možemo reći da su izjave prekidača najbolje za fiksne vrijednosti podataka.
  • Izjave o prebacivanju bolje su za višestruko grananje.
  • Brzina obrade koda je brza kada koristimo preklopne izjave (to je vidljivo kada postoji značajan broj slučajeva); općenito, ako-else izjavama je trebalo vremena kada postoji veliki broj slučajeva.
  • Izjave o prebacivanju manje su osjetljive na pogreške jer su mnogo čišće kada moramo kombinirati slučajeve.

definicija

Izjava o preklopu će usporediti vrijednost izraza i vrijednosti prisutne na popisu i pružiti nam najbolji izlaz koji ispunjava sve zahtjeve. Sada ćemo vidjeti ilustraciju gdje možemo upotrijebiti izjavu o prebacivanju.

Sintaksa:

Osnovna sintaksa R za preklopne izjave izgleda:

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

Ovdje će kôd usporediti vrijednost izraza s vrijednostima na popisu i najbolje podudaranje će se vratiti kao izlaz koji ispunjava svaki uvjet izjave problema.

Pravila izjave o prebacivanju

Pravila koja su primjenjiva u Izjavi o prebacivanju su:

1. Ne postoji ograničenje za izjave slučaja unutar prekidača kao što možete formirati n brojeva izjava slučaja, jedino ograničenje je da svaki slučaj prati vrijednost koja se uspoređuje ili dvotočku gdje god se nalazio niz znakova.

2. Ako postoji više podudaranja unutar izjave prekidača, prva podudaranje slučaja vraća se kao izlaz.

Primjer 1

Kodirati:

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

Izlaz:

Kodirati:

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

Izlaz:

3. Ako je vrijednost koju u našem kodu moramo procijeniti broj i numerička vrijednost je izvan raspona (Vrijednosti su veće od broja stavki na popisu ili manje od 1). Tada se ishod vratio nama „NULL“.

Primjer 2

Kodirati:

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

Izlaz:

Kodirati:

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

Izlaz:

4. Ako moramo procijeniti niz znakova, onda se znakovni nizovi moraju točno podudarati s imenima elemenata.

Primjer 3

Kodirati:

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

Izlaz:

Kodirati:

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

Izlaz:

5. Pogrešku ćemo dobiti samo ako postoji više izjava slučaja s pogrešnim pravopisom ili ako taj izraz nije na popisu ili nedostaje odgovarajuća vrijednost izjave slučaja.

Dijagram toka sklopke u R

  • Ako je izraz = slučaj 1, izrađuje se IZJAVA 1.
  • Ako je izraz = slučaj 2, izrađuje se IZJAVA 2.
  • Ako je izraz = slučaj 3, izrađuje se IZJAVA 3.
  • Ako slučaj 1, slučaj 2 i slučaj 3 ne uspiju, tada se izvršava zadana izjava.

Upotrijebite slučajeve izjave preklopnika

Neki slučajevi u kojima možemo upotrijebiti izjave o prebacivanju.

Tip 1: ako je izraz izraz broj

Kodirati:

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

Izlaz:

Kodirati:

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

Izlaz:

U gornjem primjeru imamo popis koji se sastoji od tri elementa (Ball, Bat, i Wickets), funkcija sklopke prekidača vratit će odgovarajuću stavku numeričkoj vrijednosti koju smo unijeli kao izraz.

Ovdje moramo pomno slijediti pravila tijekom korištenja izraza Switch, poput vrlo osnovne i uobičajene pogreške je:

"Ako je vrijednost koja se procjenjuje broj je i brojčana vrijednost je izvan raspona (Vrijednosti su veće od broja stavki na popisu ili manje od 1). Ishod koji nam se vratio je „NULL“.

Kodirati:

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

Izlaz:

Tip 2: Ako je izraz izrazni

Kodirati:

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

Izlaz:

Dijagram toka za primjer izgleda ovako:

Tip 3: Mix n Match

Primjer 1:

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

Ovdje smo dodijelili neke vrijednosti x i y, zatim izrazu prebacivanja dodamo izraz kao jednadžba.

Dakle, x + y = 1 + 2 = 3.

Što znači da će treća vrijednost na popisu doći kao izlaz. U našem primjeru, vrijednost 3 je "Zdravo Naman".

Kodirati:

A kod gornjeg primjera izgleda ovako:

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

Izlaz:

Primjer br. 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")

Kad ovo pokrenemo u R, dobit ćemo.

Kodirati:

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

Izlaz:

Zaključak

  • Izjave o prebacivanju lakše se čitaju.
  • Izvodi prebacivanja su učinkovitiji ako ih usporedimo s izrazom If-Else.
  • Izjave o preklopnici jednostavno je za održavanje i pisanje.
  • Pomoću Izjave o prebacivanju možemo napraviti tablicu skokova.
  • Izjave o prebacivanju pomažu nam da veliki kôd učinimo vrlo prikladnim, vrlo je lako ući u trag grešci u kodu ako postoji.

Iako postoje i neka ograničenja poput Switch izjava ne radi s floatima i također ne radi s rasponima (osim ako nije izričito navedeno).

Preporučeni članci

Ovo je vodič za preklopnu izjavu u R. Ovdje raspravljamo o Pravilima, dijagramu protoka i različitim slučajevima uporabe prekidačkih izjava u R s primjerima. Možete pogledati i sljedeće članke da biste saznali više -

  1. Izjava o prebacivanju na C
  2. Izjava o prebacivanju na C ++
  3. Izjava o prebacivanju na JavaScript
  4. Izjava o prebacivanju u Matlabu
  5. Izjava o prebacivanju u C #

Kategorija: