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 merupakan bagian dari kursus
R Tingkat Menengah untuk Keuangan
Instruksi 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 langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# 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]))
}
}