Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Присвоєння значень індексованим підмасивам | Індексація та Зрізи
Основи NumPy
Секція 2. Розділ 10
single

single

Присвоєння значень індексованим підмасивам

Свайпніть щоб показати меню

З індексованими масивами робота стає цікавішою. Тут розглядаються 1D та 2D підмасиви, оскільки 3D підмасиви рідко використовуються на практиці.

Розгляньте присвоєння значень срезам. Загальний синтаксис виглядає так: slice = values, де slice — це срез певного масиву, а values — це значення, які потрібно присвоїти.

Можливі формати values:

  • один скаляр (число);
  • 1D масив такого ж розміру, як і срез (якщо це 1D); або розміру другої виміри (якщо срез 2D);
  • 2D масив такої ж форми, як і 2D срез.
123456789101112131415161718
import numpy as np array_1d = np.array([1, 4, 6, 2, 9]) # Assigning an array to the slice of array_1d array_1d[1:-1] = np.array([3, 5, 7]) print(array_1d) # Assigning a scalar to the slice of array_1d array_1d[1:-1] = 5 print(array_1d) array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]) # Assigning a 2D array to the slice of array_2d array_2d[1:3, 1:] = np.array([[20, 21], [40, 41]]) print(array_2d) # Assigning a 1D array to the slice of array_2d array_2d[1:3, 1:] = [50, 51] print(array_2d) # Assigning a scalar to the slice of array_2d array_2d[1:3, 1:] = 30 print(array_2d)
Присвоєння значень зрізу 1D
Присвоєння значень зрізу 2D

Під час присвоєння скаляра зрізу 1D цей скаляр присвоюється кожному елементу зрізу. Якщо 1D масив присвоюється 2D зрізу, цей 1D масив присвоюється кожному 1D масиву у зрізі. Присвоєння скаляра 2D зрізу відбувається так само, як і для 1D зрізу.

Присвоєння значень підмасивам, індексованим масивом цілих чисел, відбувається так само, як і для зрізів. Присвоєння значень підмасивам, індексованим булевим масивом, відбувається так само, як і для 1D зрізів.

Завдання

Проведіть, щоб почати кодувати

Ви керуєте набором даних цін на товари та їхніх рейтингів. Ціни зберігаються в масиві prices, а рейтинги (за 10-бальною шкалою) — у масиві ratings. Ваше завдання — оновити ці дані відповідно до заданих критеріїв:

  1. Присвоїти значення 20 кожному елементу в prices, який перевищує 10, використовуючи скаляр.
  2. Присвоїти NumPy-масив з елементами 9, 8 двом останнім елементам другого рядка масиву ratings. Використовуйте позитивний індекс рядка та зріз.

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 10
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

some-alt