R でベクトルから行列を作成する方法 (例付き)
2 つの方法のいずれかを使用して、R のベクトルから行列をすばやく作成できます。
方法 1: cbind() を使用して行列内のベクトルを列ごとにバインドする
my_matrix <- cbind(vector1, vector2, vector3)
方法 2: rbind() を使用して行列内のベクトルを行ごとにバインドする
my_matrix <- rbind(vector1, vector2, vector3)
次の例は、各メソッドを実際に使用する方法を示しています。
方法 1: cbind() を使用して行列内のベクトルを列ごとにバインドする
次のコードは、 cbind()を使用して列状行列内の 3 つのベクトルをバインドする方法を示しています。
#definevectors
vector1 <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
vector2 <- c(2, 4, 6, 8, 10, 12, 14, 16, 18, 20)
vector3 <- c(3, 6, 9, 12, 15, 18, 21, 24, 27, 30)
#column-bind vectors together into matrix
my_matrix <- cbind(vector1, vector2, vector3)
#view resulting matrix
my_matrix
vector1 vector2 vector3
[1,] 1 2 3
[2,] 2 4 6
[3,] 3 6 9
[4,] 4 8 12
[5,] 5 10 15
[6,] 6 12 18
[7,] 7 14 21
[8,] 8 16 24
[9,] 9 18 27
[10,] 10 20 30
#view dimensions of matrix
dim(my_matrix)
[1] 10 3
結果は 10 行 3 列の行列になり、3 つの元のベクトルがそれぞれ一意の列を表すことがわかります。
方法 2: rbind() を使用して行列内のベクトルを行ごとにバインドする
次のコードは、 rbind() を使用して列状行列内の 3 つのベクトルをバインドする方法を示しています。
#definevectors
vector1 <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
vector2 <- c(2, 4, 6, 8, 10, 12, 14, 16, 18, 20)
vector3 <- c(3, 6, 9, 12, 15, 18, 21, 24, 27, 30)
#row-bind vectors together into matrix
my_matrix <- rbind(vector1, vector2, vector3)
#view resulting matrix
my_matrix
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
vector1 1 2 3 4 5 6 7 8 9 10
vector2 2 4 6 8 10 12 14 16 18 20
vector3 3 6 9 12 15 18 21 24 27 30
#view dimensions of matrix
dim(my_matrix)
[1] 3 10
結果は 3 行 10 列の行列になり、3 つの元のベクトルがそれぞれ 1 行を表すことがわかります。
注: これらの例では、行列内で 3 つのベクトルをリンクすることを選択していますが、この正確な構文を使用して、行列内に必要な任意の数のベクトルをリンクすることができます。
追加リソース
次のチュートリアルでは、R で他の一般的な関数を実行する方法について説明します。
R でデータ フレームの列をベクトルに変換する方法
Rで行列をベクトルに変換する方法
R で空の行列を作成する方法
R で空のベクトルを作成する方法