NumPy — популярная библиотека Python для научных вычислений и манипулирования данными. Среди множества полезных функций функция blockвыделяется своей способностью создавать блочные матрицы. В этой статье мы углубимся в синтаксис и использование функции block, а также предоставим примеры кода, демонстрирующие ее универсальность. К концу вы получите четкое представление о том, как использовать эту мощную функцию в своих проектах.
Методы и примеры кода:
-
Создание блочной матрицы из 2D-массивов:
import numpy as np A = np.array([[1, 2], [3, 4]]) B = np.array([[5, 6], [7, 8]]) C = np.array([[9, 10], [11, 12]]) block_matrix = np.block([[A, B], [C]]) print(block_matrix) -
Вложенность блочных матриц:
import numpy as np A = np.array([[1, 2], [3, 4]]) B = np.array([[5, 6], [7, 8]]) block_matrix_1 = np.block([[A, B]]) block_matrix_2 = np.block([[block_matrix_1], [B]]) print(block_matrix_2) -
Объединение массивов и скаляров:
import numpy as np A = np.array([[1, 2], [3, 4]]) B = 5 block_matrix = np.block([[A, B], [B, A]]) print(block_matrix) -
Создание блочно-диагональных матриц:
import numpy as np A = np.array([[1, 2], [3, 4]]) B = np.array([[5, 6], [7, 8]]) block_matrix = np.block([[np.diag(A.flatten()), np.zeros((4, 2))], [np.zeros((2, 4)), B]]) print(block_matrix) -
Объединение блочных матриц по горизонтали:
import numpy as np A = np.array([[1, 2], [3, 4]]) B = np.array([[5, 6], [7, 8]]) C = np.array([[9, 10], [11, 12]]) block_matrix = np.block([A, B, C]) print(block_matrix)