Melakukan loop pada baris data frame
Bayangkan Anda tertarik pada hari-hari ketika harga saham Apple naik di atas 117. Jika melewati nilai ini, Anda ingin mencetak tanggal dan harga saham saat itu. Jika Anda memiliki data frame stock dengan kolom date dan apple, bisakah Anda melakukan loop pada baris-baris data frame untuk mencapainya? Tentu bisa!
Sebelum melakukannya, perhatikan bahwa Anda dapat memperoleh jumlah baris dalam data frame menggunakan nrow(stock). Lalu, Anda dapat membuat deret untuk dilalui dengan 1:nrow(stock).
for (row in 1:nrow(stock)) {
price <- stock[row, "apple"]
date <- stock[row, "date"]
if(price > 117) {
print(paste("On", date,
"the stock price was", price))
}
}
[1] "On 2016-12-21 the stock price was 117.06"
[1] "On 2016-12-27 the stock price was 117.26"
Contoh ini menggabungkan beberapa hal yang telah kita pelajari sejauh ini: if statement, penyubsetan vektor, kondisi, dan loop! Selamat atas kemajuan Anda!
Data frame stocks tersedia untuk Anda gunakan.
Latihan ini adalah bagian dari kursus
R Tingkat Menengah untuk Keuangan
Petunjuk latihan
- Lengkapi bagian kosong dalam for loop agar hal berikut benar:
priceharus berisi harga pada iterasi tersebutdateharus berisi tanggal pada iterasi tersebut- Kali ini, Anda ingin mengetahui apakah
applemelampaui116. - Jika ya, cetak
datedanprice. - Jika di bawah
116, cetakdatedan bahwa itu bukan hari yang penting!
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Loop over stock rows
for (row in 1:___) {
price <- stock[___, "___"]
date <- stock[___, "___"]
if(___ > ___) {
print(paste("On", ___,
"the stock price was", ___))
} else {
print(paste("The date:", ___,
"is not an important day!"))
}
}