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

single

bookЗрізи у двовимірних масивах

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

Зрізи у двовимірних та багатовимірних масивах працюють аналогічно до зрізів у одномірних масивах. Однак у 2D-масивах існує дві осі.

Якщо потрібно виконати зріз лише по осі 0 для отримання одномірних масивів, синтаксис залишається незмінним: array[start:end:step]. Якщо потрібно виконати зріз по елементах цих одномірних масивів (вісь 1), використовується такий синтаксис: array[start:end:step, start:end:step]. Фактично, кількість зрізів відповідає кількості вимірів масиву.

Крім того, можна використовувати зріз по одній осі та базову індексацію по іншій осі. Розглянемо приклад двовимірного зрізу (фіолетові квадрати позначають елементи, отримані в результаті зрізу, а чорна стрілка вказує, що елементи взяті у зворотному порядку):

1234567891011121314151617181920
import numpy as np array_2d = np.array([ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12] ]) # Initial Array print("Initial array_2d:\n", array_2d) # Rows from index 1 to the end print("\narray_2d[1:]:\n", array_2d[1:]) # All rows, first column only print("\narray_2d[:, 0]:\n", array_2d[:, 0]) # Subarray: rows from 1 to end, columns from 1 to second-to-last print("\narray_2d[1:, 1:-1]:\n", array_2d[1:, 1:-1]) # All rows except the last, every second column print("\narray_2d[:-1, ::2]:\n", array_2d[:-1, ::2]) # Third row (index 2) reversed print("\narray_2d[2, ::-1]:\n", array_2d[2, ::-1])
copy

На зображенні нижче показано структуру масиву student_scores, який використовується у завданні:

Завдання

Swipe to start coding

Ви працюєте з двовимірним масивом NumPy, який представляє бали трьох студентів з трьох різних предметів. Оцінки кожного студента зберігаються в окремому рядку, де кожен елемент відповідає балу з певного предмета.

  1. Створіть зріз student_scores, який містить останні два бали першого студента (перший рядок).
  2. Використовуйте базову індексацію (позитивну індексацію) та зрізи, вказуючи лише додатній start.

Рішення

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

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

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

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

single

Запитати АІ

expand

Запитати АІ

ChatGPT

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

some-alt