1. 学ぶ
  2. /
  3. コース
  4. /
  5. 金融のための中級R

Connected

演習

行列要素にループを回す

これまで扱ってきたのは1次元のデータ型でした。行列(列と行)の要素にループを回したい場合は、入れ子(ネスト)になったループを使う必要があります。ここではこの方法を使って、3つの銘柄の相関を出力します。

考え方としては、まず1行目にいて、右方向に動きながら col1、col2、… と、1行目の最後の列まで進みます。その後、2行目に下りて同じ処理を繰り返します。

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"

相関行列 corr が用意されています。

指示

100 XP
  • まずは corr を表示して、データの中身を確認してください。
  • 入れ子の for ループを完成させましょう。次の条件を満たすようにしてください。
    • 外側のループは corr の row を回します。
    • 内側のループは corr の col を回します。
    • print 文では、現在の列名と行名、そしてその相関係数を出力してください。