Багатовимірна індексація
Тепер, коли ви вмієте отримувати доступ до елементів у одномірних масивах, настав час ознайомитися з індексацією у багатовимірних масивах.
Індексація у 2D масивах
Це масив розміром 2x3, тобто він складається з 2 одновимірних масивів вздовж осі 0, і кожен з цих одновимірних масивів містить 3 елементи вздовж осі 1.
Зображення нижче ілюструють позитивну та негативну індексацію у 2D масивах (значення масиву показані чорним, індекси — зеленим для позитивних індексів і червоним для негативних індексів):
Доступ до елементів у двовимірних масивах
У одномірних масивах елементи вибираються за допомогою індексу в квадратних дужках. Якщо виконати те саме для двовимірних масивів, буде отримано одновимірний масив за вказаним індексом, що може бути саме тим, що потрібно.
Однак, якщо потрібно отримати конкретний елемент внутрішнього одномірного масиву, слід вказати індекс одномірного масиву (по осі 0) та індекс його елемента (по осі 1), наприклад, array[0, 1]. Можна також записати array[0][1], як у Python list, але це менш ефективно, оскільки пошук виконується двічі для кожного індексу замість одного разу.
Якщо вказаний індекс виходить за межі, буде згенеровано IndexError, тому слід бути обережним.
12345678import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Accessing the first element (1D array) with positive index print(array_2d[0]) # Accessing the second element of the first 1D array with positive index print(array_2d[0, 1]) # Accessing the last element of the last 1D array with negative index print(array_2d[-1, -1])
На зображенні нижче показано структуру масиву stock_prices, який використовується у завданні:
Swipe to start coding
stock_prices містить змодельовані ціни акцій за п’ять днів для п’яти різних компаній. Кожен рядок відповідає певній компанії, а кожен стовпець — певному дню. Таким чином, кожен елемент матриці представляє ціну закриття акцій певної компанії в конкретний день.
- Отримати всі ціни акцій першої компанії за п’ять днів, використовуючи позитивну індексацію.
- Отримати ціну акцій третьої компанії на другий день, використовуючи позитивну індексацію.
- Отримати ціну акцій останньої компанії в останній день, використовуючи негативну індексацію.
Рішення
Дякуємо за ваш відгук!
single
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Awesome!
Completion rate improved to 3.7
Багатовимірна індексація
Свайпніть щоб показати меню
Тепер, коли ви вмієте отримувати доступ до елементів у одномірних масивах, настав час ознайомитися з індексацією у багатовимірних масивах.
Індексація у 2D масивах
Це масив розміром 2x3, тобто він складається з 2 одновимірних масивів вздовж осі 0, і кожен з цих одновимірних масивів містить 3 елементи вздовж осі 1.
Зображення нижче ілюструють позитивну та негативну індексацію у 2D масивах (значення масиву показані чорним, індекси — зеленим для позитивних індексів і червоним для негативних індексів):
Доступ до елементів у двовимірних масивах
У одномірних масивах елементи вибираються за допомогою індексу в квадратних дужках. Якщо виконати те саме для двовимірних масивів, буде отримано одновимірний масив за вказаним індексом, що може бути саме тим, що потрібно.
Однак, якщо потрібно отримати конкретний елемент внутрішнього одномірного масиву, слід вказати індекс одномірного масиву (по осі 0) та індекс його елемента (по осі 1), наприклад, array[0, 1]. Можна також записати array[0][1], як у Python list, але це менш ефективно, оскільки пошук виконується двічі для кожного індексу замість одного разу.
Якщо вказаний індекс виходить за межі, буде згенеровано IndexError, тому слід бути обережним.
12345678import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Accessing the first element (1D array) with positive index print(array_2d[0]) # Accessing the second element of the first 1D array with positive index print(array_2d[0, 1]) # Accessing the last element of the last 1D array with negative index print(array_2d[-1, -1])
На зображенні нижче показано структуру масиву stock_prices, який використовується у завданні:
Swipe to start coding
stock_prices містить змодельовані ціни акцій за п’ять днів для п’яти різних компаній. Кожен рядок відповідає певній компанії, а кожен стовпець — певному дню. Таким чином, кожен елемент матриці представляє ціну закриття акцій певної компанії в конкретний день.
- Отримати всі ціни акцій першої компанії за п’ять днів, використовуючи позитивну індексацію.
- Отримати ціну акцій третьої компанії на другий день, використовуючи позитивну індексацію.
- Отримати ціну акцій останньої компанії в останній день, використовуючи негативну індексацію.
Рішення
Дякуємо за ваш відгук!
single