R语言 矩阵转置的应用
矩阵的转置是一种操作,我们将矩阵的行转换成列,将矩阵的列转换成行。进行矩阵转置的一般公式如下。
Aij = Aji where i is not equal to j
例子
Matrix M ---> [1, 8, 9
12, 6, 2
19, 42, 3]
Transpose of M
Output ---> [1, 12, 19
8, 6, 42,
9, 2, 3]
矩阵的转置可以通过两种方式进行。
- 通过使用t()函数寻找转置
# R program for Transpose of a Matrix
# create a matrix with 2 rows
# using matrix() method
M <- matrix(1:6, nrow = 2)
# print the original matrix
print(M)
# transpose of matrix
# using t() function.
t <- t(M)
# print the transpose matrix
print(t)
- 输出
[, 1] [, 2] [, 3]
[1, ] 1 3 5
[2, ] 2 4 6
[, 1] [, 2]
[1, ] 1 2
[2, ] 3 4
[3, ] 5 6
- 通过使用循环对每个值进行迭代
# create matrix with 3 rows and 3 columns
Matrix = matrix(1:9, nrow = 3)
# print the matrix
print(Matrix)
# create another matrix
M2 = Matrix
# Loops for Matrix Transpose
for (i in 1:nrow(M2))
{
# iterate over each row
for (j in 1:ncol(M2))
{
# iterate over each column
# assign the correspondent elements
# from row to column and column to row.
M2[i, j] <- Matrix[j, i]
}
}
# print the transposed matrix
print(M2)
- 输出
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 4 5 6
[3,] 7 8 9