Используйте возможности математики и линейной алгебры с помощью NumPy и Python

Вы изучите некоторые основные операции линейной алгебры с использованием NumPy и Python.

Наиболее распространенные операции линейной алгебры NumPy

1. Умножение матриц
2. Инверсия матриц
3. Преобразование матриц
4. Сложение матриц
5. Вычитание матриц

Умножение матриц

Вычитание матриц — это математическая операция, которая используется для вычитания двух матриц друг из друга. Он включает вычитание каждого элемента одной матрицы из соответствующего элемента другой матрицы. Результатом вычитания является новая матрица того же размера, что и две вычитаемые матрицы. Например, если у нас есть две матрицы A и B, результатом вычитания
будет новая матрица C, где C = A — B. Чтобы вычитание матриц было действительным, две матрицы должны иметь одинакового размера, то есть они должны иметь одинаковое количество строк и столбцов.

import numpy as np

A = np.array([[1, 2],
              [3, 4]])

B = np.array([[5, 6],
              [7, 8]])

# Elementwise multiplication
print(A * B)
# [[ 5 12]
#  [21 32]]

# Matrix multiplication
print(A.dot(B))
# [[19 22]
#  [43 50]]

Инверсия матрицы

Инверсия матрицы — это процесс нахождения обратной заданной матрицы. Это обычная операция в линейной алгебре, которая используется для решения систем линейных уравнений. Обратная матрица — это матрица, которая при умножении на исходную матрицу дает единичную матрицу. Единичная матрица — это матрица с единицами вдоль главной диагонали и нулями в остальных местах. Чтобы найти обратную матрицу, матрица должна быть квадратной и иметь ненулевой определитель. Если матрица не имеет ненулевого определителя, то она необратима. Чтобы найти обратную матрицу, нужно использовать метод исключения Гаусса-Жордана или другой метод обращения матрицы. Этот метод включает в себя операции со строками для сведения исходной матрицы к единичной матрице, а затем использование тех же операций со строками для сведения единичной матрицы к обратной исходной матрице.

import numpy as np

A = np.array([[1,2],[3,4]])

# Calculate the inverse of A
B = np.linalg.inv(A)

print(B)

# Print result
# [[-2.   1. ]
#  [ 1.5 -0.5]]

Матричное транспонирование

Транспозиция матриц — это математическая операция, заключающаяся в перестановке строк и столбцов матрицы. Другими словами, это процесс превращения строк матрицы в столбцы и наоборот. Например, если у нас есть матрица 2x3, ее транспонирование приведет к матрице 3x2. Эта операция часто используется в линейной алгебре и других математических вычислениях. Транспонирование матрицы также может быть полезно для анализа данных, поскольку оно может помочь выявить закономерности или взаимосвязи между различными переменными.

import numpy as np

# Initializing matrix
test_matrix = np.array([[1, 2], [3, 4]])

# Printing original matrix
print ("Original matrix : \n", test_matrix)

# Transpose of matrix
result = np.transpose(test_matrix)

# Printing result
print ("\nMatrix Transpose : \n", result)

Добавление матрицы

Сложение матриц — это математическая операция, которая используется для сложения двух матриц. Матрицы представляют собой прямоугольные массивы чисел, символов или выражений, расположенных в строках и столбцах. Чтобы добавить две матрицы, соответствующие элементы в каждой матрице должны быть сложены вместе. Например, если две матрицы, A и B, являются матрицами 3x3, то A + B = C, где C - матрица 3x3 с соответствующими элементами в каждой матрице, сложенными вместе. Например, если A = [[1,2,3], [4,5,6], [7,8,9]] и B = [[9,8,7], [6,5,4] , [3,2,1]], то A + B = [[10, 10, 10], [10, 10, 10], [10, 10, 10]].

import numpy as np

# Initializing two 3x3 matrices
X = np.array([[1,2,3],
            [4,5,6],
            [7,8,9]])

Y = np.array([[9,8,7],
            [6,5,4],
            [3,2,1]])

# Adding two matrices
Z = X + Y

# Printing the resultant matrix
print(Z)

Матричное вычитание

Вычитание матриц — это процесс вычитания одной матрицы из другой. Это тип математической операции, используемой в линейной алгебре. Он включает в себя вычитание соответствующих элементов двух матриц одинакового размера. Например, если A и B — две матрицы одинакового размера, то матрица C = A — B является результатом вычитания каждого элемента B из соответствующего элемента A. Результат вычитания матрицы также является матрицей.

import numpy as np

# define two matrices
matrix1 = np.array([[1, 2],
                    [3, 4]])

matrix2 = np.array([[5, 6],
                    [7, 8]])

# subtract two matrices
matrix_sub = np.subtract(matrix1, matrix2)

# print resultant matrix
print(matrix_sub)

Заключение

Линейная алгебра — это больше, чем просто базовые операции. Чтобы освоить линейную алгебру, нам нужно будет прочитать много книг и попрактиковаться в программировании.

Никогда не сдавайтесь в обучении, создании кода, тестировании, работе и создании ценности для других! Спасибо за прочтение!

Рекомендуемые книги по линейной алгебре

Введение в линейную алгебру (Гилберт Стрэнг)

Практическая линейная алгебра для науки о данных: от основных концепций до приложений с использованием Python

Дополнительные материалы на PlainEnglish.io.

Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter, LinkedIn, YouTube и Discord .

Заинтересованы в масштабировании запуска вашего программного обеспечения? Ознакомьтесь с разделом Схема.