Как создать матрицу идентичности в 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
ident

 [,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
ident

 [,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
ident

 [,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

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.