IF, ELSE, ELSE IF คำสั่งในอาร์

คำสั่ง 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')  
}

Output:

## [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 เราจะพิมพ์ว่า What a great day! ไม่เช่นนั้น ไม่เพียงพอสำหรับวันนี้

คุณสามารถลองเปลี่ยนปริมาณปริมาณได้

# 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!')
}

Output:

## [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)  
}

Output:

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