IF, ELSE, ELSE IF Оператор в R

Оператор if else

Оператор if-else — отличный инструмент для разработчика, пытающегося вернуть результат на основе условия. В R синтаксис следующий:

if (condition) {
    Expr1 
} else {
    Expr2
}

Если еще заявление

Мы хотим проверить, превышает ли переменная, хранящаяся как «количество», 20. Если количество больше 20, код выведет «Вы много продали!» иначе Не достаточно на сегодня.

# Create vector quantity
quantity <-  25
# Set the is-else statement
if (quantity > 20) {
    print('You sold a lot!')
} else {
    print('Not enough for today')  
}

Вывод:

## [1] "You sold a lot!"

Внимание: Убедитесь, что вы правильно пишете отступы. Код с несколькими условиями может стать нечитаемым, если отступы расположены неправильно.

Оператор else if

Мы можем дополнительно настроить уровень управления с помощью оператора else if. С помощью elif вы можете добавить столько условий, сколько захотите. Синтаксис:

if (condition1) { 
    expr1
    } else if (condition2) {
    expr2
    } else if  (condition3) {
    expr3
    } else {
    expr4
}

Нам интересно знать, продали ли мы количество от 20 до 30. Если да, то пинта в среднем за день. Если количество > 30, мы печатаем Какой замечательный день!, в противном случае на сегодня недостаточно.

Вы можете попробовать изменить количество количества.

# Create vector quantiy
quantity <-  10
# Create multiple condition statement
if (quantity <20) {
      print('Not enough for today')
} else if (quantity > 20  &quantity <= 30) {
     print('Average day')
} else {
      print('What a great day!')
}

Вывод:

## [1] "Not enough for today"

Пример 2:

НДС имеет разную ставку в зависимости от приобретенного продукта. Представьте, что у нас есть три разных вида продуктов, к которым применяется разный НДС:

Категории Продукция НДС
A Книга, журнал, газета и т. д. 8%
B Овощи, мясо, напитки и т. д. 10%
C Футболка, джинсы, брюки и т. д. 20%

Мы можем написать цепочку, чтобы применить правильную ставку НДС к товару, купленному покупателем.

category <- 'A'
price <- 10
if (category =='A'){
  cat('A vat rate of 8% is applied.','The total price is',price *1.08)  
} else if (category =='B'){
    cat('A vat rate of 10% is applied.','The total price is',price *1.10)  
} else {
    cat('A vat rate of 20% is applied.','The total price is',price *1.20)  
}

Вывод:

# A vat rate of 8% is applied. The total price is 10.8