行列を作成するにはmatrix関数を使用します.まず必要な長さのベクトルを準備し,matrix関数のnrow引数で行数を、ncol引数で列数を指定することで行列を生成します。
m1 <- matrix(1:12, nrow = 3, ncol = 4)
m1
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
上掲の例では1から12までの整数からなる長さ12のベクトルを用意し,これを3行4列の行列に変換しています.Rでは列優先(column-major)で要素が配置されるため,1列目の1行目,2行目,3行目,次に2列目の1行目という順序で値が行列に代入されます.この例ではベクトルの長さが12であるため,行数か列数のいずれか一方を指定すれば,もう一方は自ずと決定されます.そのため,nrow引数かncol引数のいずれかを指定すればもう一方の引数は記述しなくても問題ありません.また,行列に行優先(row-major)で要素を配置したい場合は,下記のようにmatrix関数にbyrow引数をTRUEとします.
test <- matrix(1:12, nrow = 3, byrow = TRUE)
test
[,1] [,2] [,3] [,4]
[1,] 1 2 3 4
[2,] 5 6 7 8
[3,] 9 10 11 12
行列の特定の要素にアクセスするためには,ベクトルと同様に添え字を使用する.