Bevezetés a kapcsoló állításba R

Vegyük egy olyan helyzetet, ahol többféle lehetőség van kifejezések formájában, és olyan módon kell ellenőriznünk outputunkat, hogy összehasonlítsa a kifejezés értékét és a listában szereplő értékeket, és ennek megfelelően továbbadja a kimenetet. Ehhez használhatjuk az If Else utasításokat is, de vannak bizonyos korlátozások, például ha az Else utasítások nem megfelelőek, ha többirányú elágazások vannak (több lehetőség). Tehát itt használhatjuk a kapcsoló utasításokat az r-ben, amelyeknek több előnye van, például

  • A kapcsoló utasítás kimutatásokat tesztelhet egy karakterlánc objektum, lista érték vagy egyetlen egész szám alapján, alapvetően, egyszerűbben fogalmazva, azt mondhatjuk, hogy a kapcsoló utasítások a legjobbak a rögzített adat értékekhez.
  • A kapcsoló utasítások jobbak a többirányú elágazásokhoz.
  • A kód feldolgozása gyors, ha kapcsoló utasításokat használunk (ez akkor látható, ha jelentős számú eset van); általában az if-else nyilatkozatok időbe telik, amikor nagyon sok az eset.
  • A kapcsoló utasítások kevésbé érzékenyek a hibákra, mivel sokkal tisztábbak, amikor össze kell kapcsolnunk az eseteket.

Meghatározás

A kapcsoló utasítás összehasonlítja a kifejezés és a listában szereplő értékeket, és a legjobb eredményt nyújtja, amely megfelel az összes követelménynek. Most látunk néhány ábrát, ahol felhasználhatjuk a kapcsolót.

Szintaxis:

A kapcsoló-állítások alapvető szintaxisa az R-ben a következőképpen néz ki:

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

Itt a kód összehasonlítja a kifejezés értékét a listában szereplő értékekkel, és a legjobb egyezés visszatér olyan outputként, amely teljesíti a problémamegjegyzés minden feltételét.

A váltási nyilatkozat szabályai

A váltási nyilatkozatban a következő szabályok alkalmazandók:

1. A kapcsolón belül nincsenek korlátozva az eset-állítások, mivel n számú eset-állítást alakíthat ki; az egyetlen korlátozás az, hogy minden egyes esetet kövessen az összehasonlítandó érték, vagy egy kettőspont, bárhol is legyen a karakterlánc.

2. Ha a kapcsoló utasításban egynél több egyezés található, akkor az első egyezési eset utasítást outputként adja vissza.

1. példa

Kód:

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

Kimenet:

Kód:

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

Kimenet:

3. Ha a kódunkban ki kell értékelni egy számot, és a numerikus érték nem esik a tartományba (az értékek nagyobb, mint a listában szereplő tételek száma, vagy kisebb, mint 1). Akkor nekünk visszatérő eredmény „NULL”.

2. példa

Kód:

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

Kimenet:

Kód:

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

Kimenet:

4. Ha karakterláncot kell értékelnünk, akkor a karakterláncokat pontosan meg kell egyeztetni az elemek nevével.

3. példa

Kód:

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

Kimenet:

Kód:

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

Kimenet:

5. Csak akkor kapunk hibát, ha egynél több helytelen helyesírási esetnyilatkozat van, vagy ha a kifejezés nem szerepel a listában, vagy hiányzik az esetkifejezés megfelelő értéke.

A kapcsoló nyilatkozatának folyamatábrája R-ben

  • Ha kifejezés = 1. eset, akkor az 1. SZAKASZ kerül végrehajtásra.
  • Ha kifejezés = 2. eset, akkor a 2. SZAKASZ kerül végrehajtásra.
  • Ha kifejezés = 3. eset, akkor a 3. SZAKASZ kerül végrehajtásra.
  • Ha az 1., a 2. és a 3. eset nem sikerül, akkor az Alapértelmezett nyilatkozat kerül végrehajtásra.

Használja a váltási nyilatkozatokat

Néhány eset, amikor kapcsoló utasításokat használhatunk.

1. típus: Ha az kifejezés szám

Kód:

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

Kimenet:

Kód:

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

Kimenet:

A fenti példában van egy lista, amely három elemből áll (Ball, Bat és Wickets), a switch utasítás függvény a megfelelő elemet a numerikus értékre adja vissza, amelyet kifejezésként adtunk meg.

Itt szigorúan be kell tartanunk a szabályokat, miközben a Switch nyilatkozatot használjuk, mint például a legalapvetőbb és általános hiba:

„Ha a becsült érték egy szám, és a numerikus érték nem esik a tartományba (az értékek nagyobb, mint a listában szereplő tételek száma, vagy kevesebb, mint 1). A visszaadott eredmény „NULL”.

Kód:

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

Kimenet:

2. típus: Ha az kifejezés karakterlánc

Kód:

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

Kimenet:

A példa folyamatábrája a következőképpen néz ki:

3. típus: keverje össze a mérkőzést

1. példa:

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

Itt néhány értéket rendelünk x-hez és y-hez, majd hozzáadjuk a kifejezést a switch utasításban egyenletként.

Tehát x + y = 1 + 2 = 3.

Ami azt jelenti, hogy a lista harmadik értéke outputként fog megjelenni. Példánkban a 3 érték „Hello Naman”.

Kód:

És a fenti példa kódja így néz ki:

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

Kimenet:

2. példa:

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

Ha ezt R-ben futtatjuk, akkor megkapjuk.

Kód:

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

Kimenet:

Következtetés

  • A kapcsoló utasítások könnyebben olvashatók.
  • A kapcsoló utasítások hatékonyabbak, ha összehasonlítjuk azokat az If-Else utasításokkal.
  • A kapcsoló utasításokat könnyű karbantartani és írni.
  • A Switch Statement segítségével elkészíthetünk egy ugródeszkát.
  • A kapcsoló utasítások segítenek abban, hogy a nagy kód nagyon hasznos legyen, nagyon könnyű megtalálni a hibát a kódban, ha van.

Noha vannak bizonyos korlátozások is, például a Switch utasítások nem működnek úszókkal, és nem is működnek a tartományokkal (kivéve, ha kifejezetten említik).

Ajánlott cikkek

Ez egy útmutató az átváltási nyilatkozathoz R-ben. Itt példákkal tárgyaljuk a szabályokat, a folyamatábrát és az átváltási nyilatkozatok különböző felhasználási eseteit R-ben. A következő cikkeket is megnézheti további információkért -

  1. Kapcsoló nyilatkozat C-ben
  2. Váltás a C ++ kifejezésben
  3. Váltás a JavaScripten
  4. Váltás a Matlabban
  5. Váltás a C # számban

Kategória: