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

Інструкція if else

Оператор if-else є чудовим інструментом для розробника, який намагається повернути результат на основі умови. У R синтаксис такий:

if (condition) {
    Expr1 
} else {
    Expr2
}

Інструкція If Else

Ми хочемо перевірити, чи змінна, збережена як «кількість», перевищує 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:

ПДВ має різну ставку залежно від придбаного товару. Уявіть, що у нас є три різні види продуктів із різними ПДВ:

Категорії Продукти- TJNE ПДВ
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