📅  最后修改于: 2020-11-29 07:44:59             🧑  作者: Mango
矩阵是R对象,其中元素以二维矩形布局排列。它们包含相同原子类型的元素。尽管我们可以创建仅包含字符或仅包含逻辑值的矩阵,但是它们的用处不大。我们使用包含数值元素的矩阵进行数学计算。
使用matrix()函数创建一个Matrix。
在R中创建矩阵的基本语法是-
matrix(data, nrow, ncol, byrow, dimnames)
以下是所用参数的描述-
data是输入向量,它成为矩阵的数据元素。
nrow是要创建的行数。
ncol是要创建的列数。
借阅是合乎逻辑的线索。如果为TRUE,则输入矢量元素按行排列。
dimname是分配给行和列的名称。
创建一个以数字向量为输入的矩阵。
# Elements are arranged sequentially by row.
M
当我们执行以上代码时,它产生以下结果-
[,1] [,2] [,3]
[1,] 3 4 5
[2,] 6 7 8
[3,] 9 10 11
[4,] 12 13 14
[,1] [,2] [,3]
[1,] 3 7 11
[2,] 4 8 12
[3,] 5 9 13
[4,] 6 10 14
col1 col2 col3
row1 3 4 5
row2 6 7 8
row3 9 10 11
row4 12 13 14
可以通过使用元素的列索引和行索引来访问矩阵的元素。我们考虑上面的矩阵P来找到下面的特定元素。
# Define the column and row names.
rownames = c("row1", "row2", "row3", "row4")
colnames = c("col1", "col2", "col3")
# Create the matrix.
P
当我们执行以上代码时,它产生以下结果-
[1] 5
[1] 13
col1 col2 col3
6 7 8
row1 row2 row3 row4
5 8 11 14
使用R运算符对矩阵执行各种数学运算。运算结果也是一个矩阵。
该操作涉及的矩阵的尺寸(行数和列数)应相同。
# Create two 2x3 matrices.
matrix1
当我们执行以上代码时,它产生以下结果-
[,1] [,2] [,3]
[1,] 3 -1 2
[2,] 9 4 6
[,1] [,2] [,3]
[1,] 5 0 3
[2,] 2 9 4
Result of addition
[,1] [,2] [,3]
[1,] 8 -1 5
[2,] 11 13 10
Result of subtraction
[,1] [,2] [,3]
[1,] -2 -1 -1
[2,] 7 -5 2
# Create two 2x3 matrices.
matrix1
当我们执行以上代码时,它产生以下结果-
[,1] [,2] [,3]
[1,] 3 -1 2
[2,] 9 4 6
[,1] [,2] [,3]
[1,] 5 0 3
[2,] 2 9 4
Result of multiplication
[,1] [,2] [,3]
[1,] 15 0 6
[2,] 18 36 24
Result of division
[,1] [,2] [,3]
[1,] 0.6 -Inf 0.6666667
[2,] 4.5 0.4444444 1.5000000