Увод у преклопну изјаву у Р

Размотримо ситуацију у којој постоји више опција у облику израза и морамо контролисати свој излаз на такав начин да ће упоређивати вредност израза и вредности присутне у листи и у складу с тим преносити излаз. За то можемо користити и ставке Иф Елсе, али постоје и нека ограничења попут Иф Елсе изјаве нису погодне када постоје вишеструке гранање (више опција). Дакле, овде можемо да користимо Свитцх изјаве у р који имају вишеструке предности, попут

  • Изјава о пребацивању може тестирати изразе на основу Стринг објекта, Листе вредности или појединачног целог броја, у основи, једноставнијим речима, можемо рећи да су изјаве комутатора најбоље за фиксне вредности података.
  • Изјаве о пребацивању боље су за вишеструко гранање.
  • Брзина обраде кода је брза када користимо преклопне изјаве (то је видљиво када постоји значајан број случајева); генерално, ако је остало, изјаве су им требале за време великог броја случајева.
  • Изјаве о пребацивању су мање рањиве на грешке, јер су много чистије када морамо комбиновати случајеве.

Дефиниција

Изјава о пребацивању упоредиће вредност израза и вредности присутне на листи и пружиће нам најбољи излаз који испуњава све захтеве. Сада ћемо видети илустрацију где можемо да користимо изјаву о пребацивању.

Синтакса:

Основна синтакса у Р за преклопне изјаве изгледа овако:

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

Овде ће код упоредити вредност израза са вредностима на листи и најбоље подударање ће се вратити као излаз који испуњава сваки услов изјаве проблема.

Правила изјаве о пребацивању

Правила која су применљива у Изјави о пребацивању су:

1. Не постоји ограничење за изјаве случаја унутар прекидача као што можете формирати н бројева изјава случаја, једино ограничење је да сваки случај прати вриједност која се успоређује са или двоточком гдје год да се налази низ знакова.

2. Ако постоји више подударања унутар изјаве о пребацивању, прва изјава случаја подударања враћа се као излаз.

Пример # 1

Шифра:

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

Излаз:

Шифра:

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

Излаз:

3. Ако је вредност коју у нашем коду морамо процијенити број и нумеричка вриједност је ван распона (Вриједности су веће од броја ставки на листи или мање од 1). Тада се исход вратио нама „НУЛЛ“.

Пример бр. 2

Шифра:

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

Излаз:

Шифра:

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

Излаз:

4. Ако морамо процијенити низ знакова, онда се знаковни низови морају тачно подударати с именима елемената.

Пример бр. 3

Шифра:

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

Излаз:

Шифра:

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

Излаз:

5. Добићемо грешку као резултат само када постоји више изјава случаја с погрешним правописом или ако тај израз није на списку или недостаје одговарајућа вредност изјаве случаја.

Дијаграм тока прекидача у Р

  • Ако је израз = случај 1, изражава се ИЗЈАВА 1.
  • Ако је израз = случај 2, израђује се ИЗЈАВА 2.
  • Ако је израз = случај 3, израђује се ИЗЈАВА 3.
  • Ако случај 1, случај 2 и случај 3 не успију, тада се извршава задана изјава.

Користите случајеве изјаве прекидача

Неки случајеви у којима можемо користити преклопничке изјаве.

Тип 1: Ако је израз израз број

Шифра:

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

Излаз:

Шифра:

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

Излаз:

У горњем примјеру, имамо листу која се састоји од три елемента (Балл, Бат, анд Вицкетс), функција склопке прекидача ће вратити одговарајућу ставку нумеричкој вриједности коју смо унијели као израз.

Овде морамо пажљиво пратити правила током коришћења Свитцх изјаве, као што је врло основна и уобичајена грешка:

„Ако је процењена вредност број, а нумеричка вредност је ван распона (Вредности су веће од броја ставки на листи или мање од 1). Исход који нам се вратио је „НУЛЛ“.

Шифра:

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

Излаз:

Тип 2: Ако је израз изражен

Шифра:

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

Излаз:

Дијаграм тока за пример изгледа овако:

Тип 3: Мик н Матцх

Пример бр. 1:

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

Овде смо доделили неке вредности к и и, а затим у израз наредбе додајемо израз као једначину.

Значи к + и = 1 + 2 = 3.

Што значи да ће трећа вредност на листи доћи као излаз. У нашем примеру, вредност 3 је „Здраво Наман“.

Шифра:

А код горњег примера изгледа овако:

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

Излаз:

Пример бр. 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")

Када ово покренемо у Р-у, добићемо.

Шифра:

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

Излаз:

Закључак

  • Изјаве о пребацивању се лакше читају.
  • Изјаве о пребацивању су ефикасније ако их упоредимо са изјавом Иф-Елсе.
  • Изјаве о пребацивању се лако одржавају и пишу.
  • Помоћу Изјаве о пребацивању можемо направити табелу за скокове.
  • Изјаве о пребацивању помажу нам да велики код учинимо врло корисним, врло је лако ући у траг грешци у коду ако постоји.

Иако постоје и нека ограничења, попут Свитцх изјава не ради с флоатима, а такође не ради с распонима (осим ако није изричито поменуто).

Препоручени чланци

Ово је водич за преклопну изјаву у Р. Овде смо расправљали о правилима, дијаграму тока и различитим случајевима примене изјава о пребацивању у Р са примерима. Такође можете погледати следеће чланке да бисте сазнали више -

  1. Изјава о пребацивању на Ц
  2. Изјава о пребацивању на Ц ++
  3. Пребаци изјаву у ЈаваСцрипт-у
  4. Изјава о пребацивању у Матлабу
  5. Изјава о пребацивању у Ц #

Категорија: