Melakukan loop pada elemen matriks
Sejauh ini, Anda telah melakukan loop pada tipe data 1 dimensi. Jika Anda ingin melakukan loop atas elemen dalam sebuah matriks (kolom dan baris), Anda harus menggunakan loop bersarang (nested). Anda akan menggunakan gagasan ini untuk mencetak korelasi antara tiga saham.
Cara termudah untuk membayangkannya adalah Anda akan mulai pada baris1, lalu bergerak ke kanan, melewati kol1, kol2, …, hingga kolom terakhir di baris1. Kemudian, Anda turun ke baris2 dan mengulang prosesnya.
my_matrix
[,1] [,2]
[1,] "r1c1" "r1c2"
[2,] "r2c1" "r2c2"
# Loop over my_matrix
for(row in 1:nrow(my_matrix)) {
for(col in 1:ncol(my_matrix)) {
print(my_matrix[row, col])
}
}
[1] "r1c1"
[1] "r1c2"
[1] "r2c1"
[1] "r2c2"
Matriks korelasi, corr, tersedia untuk Anda gunakan.
Latihan ini adalah bagian dari kursus
R Tingkat Menengah untuk Keuangan
Petunjuk latihan
- Cetak
corruntuk melihat sekilas datanya. - Lengkapi loop bersarang! Loop tersebut harus memenuhi hal berikut:
- Loop luar harus mencakup
rowdaricorr. - Loop dalam harus mencakup
coldaricorr. - Pernyataan print harus mencetak nama kolom dan baris saat ini, serta mencetak nilai korelasinya.
- Loop luar harus mencakup
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Print out corr
___
# Create a nested loop
for(row in 1:nrow(___)) {
for(col in 1:___(corr)) {
print(paste(colnames(corr)[___], "and", rownames(corr)[___],
"have a correlation of", corr[row,col]))
}
}