РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
231 of 541 menu

Функция outer

Функция outer вычисляет внешнее произведение двух одномерных массивов (векторов). Результатом является двумерная матрица, размером n x m, где n и m - длины входных векторов. Элемент матрицы с индексами (i, j) равен произведению a[i] * b[j]. Функция особенно полезна в линейной алгебре и машинном обучении при построении матриц из векторов признаков.

Синтаксис

np.outer(a, b)

Параметр a - первый одномерный массив. Параметр b - второй одномерный массив. Функция возвращает двумерный массив формы (len(a), len(b)).

Пример

Вычислим внешнее произведение двух числовых векторов:

import numpy as np a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) res = np.outer(a, b) print(res)

Результат выполнения кода:

[[ 4 5 6] [ 8 10 12] [12 15 18]]

Пример

Внешнее произведение можно использовать для создания матрицы из вектора-строки и вектора-столбца:

import numpy as np row = np.array([1, 2, 3, 4]) col = np.array([10, 20, 30]) matrix = np.outer(col, row) print(matrix)

Результат выполнения кода:

[[ 10 20 30 40] [ 20 40 60 80] [ 30 60 90 120]]

Пример

Функция outer также работает с векторами, содержащими числа с плавающей точкой:

import numpy as np a = np.array([1.5, 2.5, 3.5]) b = np.array([0.5, 1.5]) res = np.outer(a, b) print(res)

Результат выполнения кода:

[[0.75 2.25] [1.25 3.75] [1.75 5.25]]

Пример

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

import numpy as np a = np.array([2, 4, 6]) b = np.array([1, 3, 5]) outer = np.outer(a, b) row_sums = outer.sum(axis=1) col_sums = outer.sum(axis=0) print("Outer product:") print(outer) print("Row sums:", row_sums) print("Column sums:", col_sums)

Результат выполнения кода:

Outer product: [[ 2 6 10] [ 4 12 20] [ 6 18 30]] Row sums: [18 36 54] Column sums: [12 36 60]

Смотрите также

  • функцию dot,
    которая вычисляет скалярное произведение двух векторов
  • функцию inner,
    которая вычисляет внутреннее произведение векторов
  • функцию kron,
    которая вычисляет произведение Кронекера для массивов
  • функцию cross,
    которая вычисляет векторное произведение двух векторов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить