Базові Математичні Операції
Тепер, коли ви ознайомилися з поняттям трансляції (broadcasting), розглянемо основні математичні операції в NumPy.
Операції зі скалярами
Пам'ятайте, трансляція дозволяє виконувати математичні операції між двома масивами сумісних форм або між масивом і скаляром.
1234567891011import numpy as np array = np.array([1, 2, 3, 4]) # Scalar addition result_add_scalar = array + 2 print(f'Scalar addition: {result_add_scalar}') # Scalar multiplication result_mul_scalar = array * 3 print(f'Scalar multiplication: {result_mul_scalar}') # Raising an array to a scalar power result_power_scalar = array ** 3 print(f'Scalar exponentiation: {result_power_scalar}')
Як видно, кожна операція виконується елементно над масивом. По суті, скаляр транслюється (broadcast) до масиву тієї ж форми, що й наш початковий array
, де всі елементи мають однакове значення. Таким чином, операція виконується для кожної пари відповідних елементів двох масивів.
Операції між двома масивами
Якщо форми двох масивів сумісні, за потреби виконується трансляція (broadcasting), і знову ж таки, операція виконується елементно:
123456789101112import numpy as np arr1 = np.array([1, 2, 3, 4]) arr2 = np.array([5, 6, 7, 8]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation: {result_power}')
Ділення, віднімання та інші арифметичні операції виконуються аналогічно. Ось ще один приклад, де другий (правий) масив транслюється:
123456789101112import numpy as np arr1 = np.array([[1, 2, 3], [4, 5, 6]]) arr2 = np.array([5, 6, 7]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation:\n{result_power}')
arr_2
транслюється у двовимірний масив з двома однаковими рядками, кожен з яких містить масив [5, 6, 7]
.
Застосування
Такі математичні операції є необхідними для завдань масштабування, нормалізації та перетворення даних у машинному навчанні та статистичному аналізі. Вони забезпечують ефективні поелементні операції для об'єднання наборів даних, виконання чисельних симуляцій і застосування фільтрів у обробці зображень та сигналів. Крім того, ці операції широко використовуються у наукових обчисленнях і дата-орієнтованих застосуваннях.
Swipe to start coding
Ви аналізуєте квартальні продажі двох продуктів у 2021 та 2022 роках, які зберігаються у двох двовимірних масивах:
sales_data_2021
: квартальні продажі кожного продукту у 2021 році, кожен рядок відповідає окремому продукту;sales_data_2022
: квартальні продажі кожного продукту у 2022 році, кожен рядок відповідає окремому продукту.
Обчисліть квартальне зростання доходу для кожного продукту у відсотках.
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Can you explain more about how broadcasting works with arrays of different shapes?
What happens if the shapes of the arrays are not compatible for broadcasting?
Can you give more real-world examples where broadcasting is useful?
Awesome!
Completion rate improved to 3.7
Базові Математичні Операції
Свайпніть щоб показати меню
Тепер, коли ви ознайомилися з поняттям трансляції (broadcasting), розглянемо основні математичні операції в NumPy.
Операції зі скалярами
Пам'ятайте, трансляція дозволяє виконувати математичні операції між двома масивами сумісних форм або між масивом і скаляром.
1234567891011import numpy as np array = np.array([1, 2, 3, 4]) # Scalar addition result_add_scalar = array + 2 print(f'Scalar addition: {result_add_scalar}') # Scalar multiplication result_mul_scalar = array * 3 print(f'Scalar multiplication: {result_mul_scalar}') # Raising an array to a scalar power result_power_scalar = array ** 3 print(f'Scalar exponentiation: {result_power_scalar}')
Як видно, кожна операція виконується елементно над масивом. По суті, скаляр транслюється (broadcast) до масиву тієї ж форми, що й наш початковий array
, де всі елементи мають однакове значення. Таким чином, операція виконується для кожної пари відповідних елементів двох масивів.
Операції між двома масивами
Якщо форми двох масивів сумісні, за потреби виконується трансляція (broadcasting), і знову ж таки, операція виконується елементно:
123456789101112import numpy as np arr1 = np.array([1, 2, 3, 4]) arr2 = np.array([5, 6, 7, 8]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation: {result_power}')
Ділення, віднімання та інші арифметичні операції виконуються аналогічно. Ось ще один приклад, де другий (правий) масив транслюється:
123456789101112import numpy as np arr1 = np.array([[1, 2, 3], [4, 5, 6]]) arr2 = np.array([5, 6, 7]) # Element-wise addition result_add = arr1 + arr2 print(f'Element-wise addition: {result_add}') # Element-wise multiplication result_mul = arr1 * arr2 print(f'Element-wise multiplication: {result_mul}') # Element-wise exponentiation (raising to power) result_power = arr1 ** arr2 print(f'Element-wise exponentiation:\n{result_power}')
arr_2
транслюється у двовимірний масив з двома однаковими рядками, кожен з яких містить масив [5, 6, 7]
.
Застосування
Такі математичні операції є необхідними для завдань масштабування, нормалізації та перетворення даних у машинному навчанні та статистичному аналізі. Вони забезпечують ефективні поелементні операції для об'єднання наборів даних, виконання чисельних симуляцій і застосування фільтрів у обробці зображень та сигналів. Крім того, ці операції широко використовуються у наукових обчисленнях і дата-орієнтованих застосуваннях.
Swipe to start coding
Ви аналізуєте квартальні продажі двох продуктів у 2021 та 2022 роках, які зберігаються у двох двовимірних масивах:
sales_data_2021
: квартальні продажі кожного продукту у 2021 році, кожен рядок відповідає окремому продукту;sales_data_2022
: квартальні продажі кожного продукту у 2022 році, кожен рядок відповідає окремому продукту.
Обчисліть квартальне зростання доходу для кожного продукту у відсотках.
Рішення
Дякуємо за ваш відгук!
single