R For Loop


Loops အတွက်

forကွင်းဆက်တစ်ခုကို အစီအစဥ်တစ်ခုအပေါ် ထပ်ကာထပ်ကာအတွက် အသုံးပြုသည် -

ဥပမာ

for (x in 1:10) {
  print(x)
}

၎င်းသည် forအခြားသော ပရိုဂရမ်းမင်းဘာသာစကားများတွင် သော့ချက်စကားလုံးနှင့် နည်းပါးပြီး အခြားအရာဝတ္ထု-ဆန်သော ပရိုဂရမ်းမင်းဘာသာစကားများတွင် တွေ့ရသည့်အတိုင်း iterator နည်းလမ်းနှင့် ပို၍အလုပ်လုပ်သည်။

ကွင်းဆက် ဖြင့် forကျွန်ုပ်တို့သည် vector၊ array၊ list စသည်ဖြင့် အကြောင်းအရာတစ်ခုစီအတွက် တစ်ကြိမ်စီတွင် ဖော်ပြချက်အစုတစ်ခုကို လုပ်ဆောင်နိုင်သည်။

နောက်ပိုင်းအခန်းတွင် စာရင်းများ နှင့် vectors စသည်တို့ အကြောင်း လေ့လာနိုင်မည်ဖြစ်သည် ။

ဥပမာ

ပစ္စည်းတိုင်းကို စာရင်းတစ်ခုတွင် ပရင့်ထုတ်ပါ။

fruits <- list("apple", "banana", "cherry")

for (x in fruits) {
  print(x)
}

ဥပမာ

အန်စာတုံးအရေအတွက်ကို ပုံနှိပ်ပါ

dice <- c(1, 2, 3, 4, 5, 6)

for (x in dice) {
  print(x)
}

Loop သည် loops forကဲ့သို့ ကြိုတင်သတ်မှတ်ရန် indexing variable မလိုအပ်ပါ ။while


ချိုး

ကြေငြာချက် ဖြင့် break၊ ၎င်းသည် အရာအားလုံးကို လှည့်ပတ်ခြင်းမပြုမီ loop ကို ရပ်တန့်နိုင်သည်-

ဥပမာ

"ချယ်ရီ" တွင် ကြိုးဝိုင်းကို ရပ်လိုက်ပါ-

fruits <- list("apple", "banana", "cherry")

for (x in fruits) {
  if (x == "cherry") {
    break
  }
  print(x)
}

"cherry" ( ) နှင့် ညီမျှ breakသည့် ကြေညာချက် ကို အသုံးပြု၍ ကွင်းဆက်ကို အပြီးသတ်ရန် ရွေးချယ်ထားသောကြောင့် ကွင်းဆက်သည် "cherry" တွင် ရပ်သွားပါမည် ။xx == "cherry"


နောက်တစ်ခု

ကြေငြာချက် ဖြင့် next၊ ကျွန်ုပ်တို့သည် ကွင်းဆက်ကို မပိတ်ဘဲ ထပ်ကာထပ်ကာ ကျော်သွားနိုင်ပါသည်။

ဥပမာ

"ငှက်ပျောသီး" ကိုကျော်ပါ

fruits <- list("apple", "banana", "cherry")

for (x in fruits) {
  if (x == "banana") {
    next
  }
  print(x)
}

ကွင်းဆက်က "ငှက်ပျောဖူး" ကို ကျော်သွားသောအခါ ၎င်းကို ကျော်သွားကာ ဆက်၍ကွင်းဆက်သွားမည်ဖြစ်သည်။


Yahtzee!

အကယ်၍.. Else သည် For Loop တစ်ခုနှင့် ပေါင်းစပ်ထားသည်။

လက်တွေ့နမူနာကို သရုပ်ပြရန် Yahtzee ဂိမ်းကို ကစားကြပါစို့။

ဥပမာ

"Yahtzee!" အန်စာတုံးနံပါတ် 6 ဖြစ်ပါက၊

dice <- 1:6

for(x in dice) {
  if (x == 6) {
    print(paste("The dice number is", x, "Yahtzee!"))
  } else {
    print(paste("The dice number is", x, "Not Yahtzee"))
  }
}

ကွင်းဆက်သည် 1 မှ 5 အထိတန်ဖိုးများရောက်ရှိပါက၊ ၎င်းသည် "No Yahtzee" နှင့် ၎င်း၏နံပါတ်များကို ရိုက်နှိပ်သည်။ တန်ဖိုး 6 သို့ရောက်သောအခါ၊ ၎င်းသည် "Yahtzee!" ၎င်း၏နံပါတ်။


Nested ကွင်းများ

ကွင်းတစ်ခု၏အတွင်း၌ ကွင်းပတ်တစ်ခုလည်း ရှိနိုင်သည်-

ဥပမာ

စာရင်းတစ်ခုတွင်အသီးတစ်ခုစီ၏နာမဝိသေသနကိုပုံနှိပ်ပါ။

adj <- list("red", "big", "tasty")

fruits <- list("apple", "banana", "cherry")
  for (x in adj) {
    for (y in fruits) {
      print(paste(x, y))
  }
}