Введение в оператор Switch в R

Давайте рассмотрим ситуацию, когда существует множество опций в форме выражений, и мы должны контролировать наш вывод таким образом, чтобы он сравнивал значение выражения и значения, присутствующие в списке, и, соответственно, передавал выходные данные. Для этого мы также можем использовать операторы If Else, но для этого есть некоторые ограничения, например, если операторы Else не подходят, когда существует многоходовое ветвление (несколько вариантов). Так что здесь мы можем использовать операторы Switch в r, которые имеют несколько преимуществ, например

  • Оператор switch может тестировать выражения на основе объекта String, значения List или единственного целого числа, в основном, в более простых терминах, мы можем сказать, что операторы switch лучше всего подходят для фиксированных значений данных.
  • Операторы Switch лучше подходят для многопотокового ветвления.
  • Скорость обработки кода высока, когда мы используем операторы switch (это заметно при наличии значительного числа случаев); Как правило, заявления if-else занимают много времени при большом количестве случаев.
  • Операторы switch менее уязвимы для ошибок, так как они намного чище, когда нам приходится комбинировать случаи.

Определение

Оператор switch сравнивает значение выражения и значения, представленные в списке, и дает нам лучший результат, который отвечает всем требованиям. Теперь мы увидим некоторую иллюстрацию, где мы можем использовать оператор switch.

Синтаксис:

Основной синтаксис в R для операторов переключателя выглядит следующим образом:

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

Здесь код будет сравнивать значение выражения со значениями в списке, и наилучшее совпадение будет возвращено как выход, который удовлетворяет каждому условию оператора задачи.

Правила выписки

Правила, которые применяются в Заявлении о переключении:

1. Нет никаких ограничений для операторов регистра в переключателе, так как вы можете сформировать n номеров операторов регистра, единственное ограничение - каждый регистр сопровождается значением, которое нужно сравнить, или двоеточием, где находится символьная строка.

2. Если в операторе switch существует более одного совпадения, первый соответствующий оператор case возвращается как выходной.

Пример № 1

Код:

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

Выход:

Код:

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

Выход:

3. Если значение, которое мы должны оценить в нашем коде, является числом, а числовое значение выходит за пределы диапазона (значения больше, чем количество элементов в списке, или меньше 1). Тогда возвращаемый нам результат - «NULL».

Пример № 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. В результате мы получим ошибку только в том случае, если существует более одного оператора case с неправильным написанием или если этого выражения нет в списке или отсутствует соответствующее значение оператора case.

Блок-схема оператора переключателя в R

  • Если Выражение = Случай 1, ЗАЯВЛЕНИЕ 1 выполняется.
  • Если Выражение = Случай 2, ЗАЯВЛЕНИЕ 2 выполняется.
  • Если Выражение = Случай 3, ЗАЯВЛЕНИЕ 3 выполняется.
  • Если в случае 1, 2 и 3 произойдет сбой, выполняется инструкция по умолчанию.

Примеры использования оператора Switch

Некоторые случаи, когда мы можем использовать операторы switch.

Тип 1: если выражение является числом

Код:

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

Выход:

Код:

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

Выход:

В приведенном выше примере у нас есть список, состоящий из трех элементов (Ball, Bat и Wickets), функция оператора switch возвращает соответствующий элемент числовому значению, которое мы ввели в качестве выражения.

Здесь мы должны строго следовать правилам при использовании оператора Switch, как самая основная и распространенная ошибка:

«Если оцениваемое значение является числом, а числовое значение выходит за пределы диапазона (значения больше, чем количество элементов в списке, или меньше 1). Возвращенный нам результат - «NULL».

Код:

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")

Здесь мы присваиваем некоторые значения x и y, затем добавляем выражение в оператор switch в виде уравнения.

Итак, х + у = 1 + 2 = 3.

Это означает, что 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")

Когда мы запустим это в R, мы получим.

Код:

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

Выход:

Вывод

  • Операторы Switch легче читать.
  • Операторы Switch более эффективны, если мы сравним их с оператором If-Else.
  • Заявления о переключателях просты в обслуживании и написании.
  • С помощью оператора Switch мы можем составить таблицу переходов.
  • Операторы switch помогают нам сделать большой код очень удобным, очень легко отследить ошибку в коде, если таковая имеется.

Хотя есть некоторые ограничения, например, операторы Switch не работают с плавающей точкой, а также не работают с диапазонами (если не указано иное).

Рекомендуемые статьи

Это руководство по инструкции Switch в R. Здесь мы обсуждаем правила, блок-схему и различные случаи использования операторов Switch в R с примерами. Вы также можете посмотреть следующие статьи, чтобы узнать больше -

  1. Переключение оператора в C
  2. Оператор переключения в C ++
  3. Переключение оператора в JavaScript
  4. Переключатель в Matlab
  5. Оператор переключения в C #