single
Присвоєння значень індексованим підмасивам
Свайпніть щоб показати меню
З індексованими масивами робота стає цікавішою. Тут ми зосередимося на 1D та 2D підмасивах, оскільки 3D підмасиви рідко використовуються на практиці.
Почнемо з присвоєння значень срезам. Загальний синтаксис виглядає так: slice = values, де slice — це срез певного масиву, а values — це значення, які потрібно присвоїти.
Можливі формати values:
- один скаляр (число);
- 1D масив такого ж розміру, як і срез (якщо це 1D); або розміру другої виміри (якщо срез 2D);
- 2D масив такої ж форми, як і 2D срез.
123456789101112131415161718import 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-срезу, цей скаляр присвоюється кожному елементу срезу. Коли 1D-масив присвоюється 2D-срезу, цей 1D-масив присвоюється кожному 1D-масиву у срезі. Присвоєння скаляра 2D-срезу відбувається так само, як і для 1D-срезу.
Присвоєння значень підмасивам, індексованим масивом цілих чисел, відбувається так само, як і для срезів. Присвоєння значень підмасивам, індексованим булевим масивом, відбувається так само, як і для 1D-срезів.
Проведіть, щоб почати кодувати
Ви керуєте набором даних цін на товари та їхніх рейтингів. Ціни зберігаються в масиві prices, а рейтинги (за 10-бальною шкалою) — у масиві ratings. Ваше завдання — оновити ці дані відповідно до заданих критеріїв:
- Присвоїти значення
20кожному елементу вprices, який перевищує 10, використовуючи скаляр. - Присвоїти NumPy-масив з елементами
9,8двом останнім елементам другого рядка масивуratings. Використовуйте позитивний індекс рядка та зріз.
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат