R'de tekrar döngüsü nasıl yazılır (3 örnek)
R’deki bir tekrar döngüsü, bir durma koşuluna ulaşılana kadar bir eylemi tekrar tekrar gerçekleştirmek için kullanılabilir.
R’de bir yineleme döngüsü yazmak için aşağıdaki temel sözdizimini kullanabilirsiniz:
repeat {
#do something
if (some condition){
break
}
}
Aşağıdaki örnekler, farklı senaryolarda tekrarlama döngüsünün nasıl kullanılacağını gösterir.
Örnek 1: Belirli bir sayıya ulaşılana kadar değerleri yazdırın
Aşağıdaki kod, 1’den başlayarak 10’a ulaşılana kadar değerleri yazdırmak için tekrarlama döngüsünün nasıl kullanılacağını gösterir:
#define starting value
x <- 0
#perform repeat-loop
repeat {
x <- x+1
print (x)
if (x >= 10){
break
}
}
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
[1] 6
[1] 7
[1] 8
[1] 9
[1] 10
Bu kodun nasıl çalıştığı aşağıda açıklanmıştır:
- Başlangıç değerini x = 0 olarak ayarladık.
- R’ye x’i 1 artırmasını ve ardından x’i yazdırmasını söyledik.
- R’ye x 10 veya daha fazla bir değere ulaştığında tekrar döngüsünü kesmesini söyledik.
Örnek 2: Belirli Bir Sayıya Ulaşıncaya Kadar Vektöre Değer Ekleme
Aşağıdaki kod, belirli bir sayıya ulaşılana kadar bir vektöre değer eklemek için tekrarlama döngüsünün nasıl kullanılacağını gösterir:
#define empty vector and starting value
data <-c()
x <- 0
#perform repeat-loop
repeat {
x <- x+1
data[x] <- x
print (data)
if (x >= 5){
break
}
}
[1] 1
[1] 1 2
[1] 1 2 3
[1] 1 2 3 4
[1] 1 2 3 4 5
Bu kodun nasıl çalıştığı aşağıda açıklanmıştır:
- Boş bir vektör oluşturduk ve başlangıç değerini x = 0 olarak belirledik.
- R’ye x’i 1 artırmasını, ardından x’in değerini vektörün x’inci konumuna yerleştirmesini söyledik.
- R’ye x 5 veya daha fazla bir değere ulaştığında tekrar döngüsünü kesmesini söyledik.
Örnek 3: Belirli bir sayıya ulaşılana kadar veri çerçevesindeki değerleri değiştirin
Aşağıdaki kod, belirli bir sayıya ulaşılıncaya kadar mevcut bir veri çerçevesinin değerlerini değiştirmek için tekrarlama döngüsünün nasıl kullanılacağını gösterir:
#define data frame and starting value
df <- data. frame (A=c(6, 7, 2, 8),
B=c(2, 4, 5, 5))
x <- 0
#perform repeat-loop
repeat {
x <- x+1
df$A[x] <- x
df$B[x] <- x * 2
if (x >= nrow(df)){
break
}
}
#view resulting data frame
df
AB
1 1 2
2 2 4
3 3 6
4 4 8
Bu kodun nasıl çalıştığı aşağıda açıklanmıştır:
- Boş bir veri çerçevesi oluşturduk ve başlangıç değerini x = 0 olarak belirledik.
- R’ye x’i 1 artırmasını, ardından x değerini A sütununun x’inci konumuna, x*2 değerini de B sütununun x’inci konumuna yerleştirmesini söyledik.
- X, veri çerçevesindeki satır sayısına eşit veya daha büyük bir değere ulaştığında R’ye tekrar döngüsünü kesmesini söyledik.
Ek kaynaklar
Aşağıdaki eğitimlerde R’de diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
R’de iç içe bir For döngüsü nasıl oluşturulur
R’de yuvalanmış If Else ifadesi nasıl yazılır?
R’de sütun adları üzerinde yineleme nasıl yapılır