Как создать матрицу идентичности в r (с примерами)
В линейной алгебре единичная матрица представляет собой квадратную матрицу с единицами на главной диагонали и нулями везде.
Вы можете создать единичную матрицу в R, используя один из трех методов:
#create identity matrix using diag()
diag(5)
#create identity matrix using diag() with explicit nrow argument
diag(nrow= 5 )
#create identity matrix by creating matrix of zeros, then filling diagonal with ones
mat <- matrix(0, 5, 5)
diag(mat) <- 1
Каждый из этих методов приводит к одному и тому же результату.
Следующие примеры показывают, как использовать каждый из этих методов на практике.
Пример 1. Создайте единичную матрицу с помощью функции Diag().
Следующий код показывает, как использовать функциюdiag() для создания единичной матрицы из 5 строк и 5 столбцов:
#create 5x5 identity matrix ident <- diag(5) #view matrix identity [,1] [,2] [,3] [,4] [,5] [1,] 1 0 0 0 0 [2,] 0 1 0 0 0 [3,] 0 0 1 0 0 [4,] 0 0 0 1 0 [5,] 0 0 0 0 1
В результате получается квадратная матрица 5х5 с единицами на главной диагонали и нулями во всех остальных местах.
Пример 2. Создайте единичную матрицу с помощью Diag(nrow)
Следующий код показывает, как использовать функциюdiag(nrow) для создания единичной матрицы 5×5:
#create 5x5 identity matrix ident <- diag(nrow= 5 ) #view matrix identity [,1] [,2] [,3] [,4] [,5] [1,] 1 0 0 0 0 [2,] 0 1 0 0 0 [3,] 0 0 1 0 0 [4,] 0 0 0 1 0 [5,] 0 0 0 0 1
Пример 3. Создайте единичную матрицу в два этапа.
Следующий код показывает, как создать единичную матрицу 5×5, сначала создав матрицу 5×5 со всеми нулями, а затем преобразовав значения ведущих диагоналей в единицы:
#create 5x5 matrix with zeros in all positions
ident <- matrix(0, 5, 5)
#make diagonal values 1
diag(ident) <- 1
#view matrix
identity
[,1] [,2] [,3] [,4] [,5]
[1,] 1 0 0 0 0
[2,] 0 1 0 0 0
[3,] 0 0 1 0 0
[4,] 0 0 0 1 0
[5,] 0 0 0 0 1
Обратите внимание, что каждый из трех методов создает одну и ту же единичную матрицу.
Дополнительные ресурсы
В следующих статьях представлены полезные сведения о идентификационной матрице:
Академия Хана: введение в матрицу идентичности
Википедия: Полное объяснение матрицы идентичности
В следующих статьях объясняется, как выполнять другие распространенные матричные операции в R:
Как выполнить умножение матриц в R
Как выполнить умножение на элементы в R
Как построить строки матрицы в R