Упражнения по NumPy

Все задания по NumPy доступны в оригинальном репозитории.

Задание 1

Импортируйте numpy как np и посмотрите версию.

import numpy as np
# code

Задание 2

Создайте одномерный массив чисел от 0 до 9.

Желаемый результат:

> array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
# code

Задание 3

Создайте логический массив размером 3 × 3 из всех True.

# code

Задание 4

Извлеките все нечетные числа из arr.

Вход:

arr = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

Желаемый результат:

> array([1, 3, 5, 7, 9])
# code

Задание 5

Замените все нечетные числа на -1.

Вход:

arr = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

Желаемый результат:

> array([ 0, -1, 2, -1, 4, -1, 6, -1, 8, -1])
# code

Задание 6

Замените все нечетные числа в arr на -1 без изменения arr.

Вход:

arr = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

Желаемый результат:

out
> array([ 0, -1, 2, -1, 4, -1, 6, -1, 8, -1])
arr
> array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
# code

Задание 7

Преобразование одномерного массива в двухмерный массив с двумя строками.

Вход:

np.arange(10)
> array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

Желаемый результат:

> array([[0, 1, 2, 3, 4],
>        [5, 6, 7, 8, 9]])
# code

Задание 8

Выполните стыковку массивов a и b по вертикали.

Вход:

a = np.arange(10).reshape(2, -1)
b = np.repeat(1, 10).reshape(2, -1)

Желаемый результат:

> array([[0, 1, 2, 3, 4],
>        [5, 6, 7, 8, 9],
>        [1, 1, 1, 1, 1],
>        [1, 1, 1, 1, 1]])
# code

Задание 9

Выполните стыковку массивов a и b по горизонтали.

Вход:

a = np.arange(10).reshape(2, -1)
b = np.repeat(1, 10).reshape(2, -1)

Желаемый результат:

> array([[0, 1, 2, 3, 4, 1, 1, 1, 1, 1],
>        [5, 6, 7, 8, 9, 1, 1, 1, 1, 1]])
# code

Задание 11

Получите общие элементы между массивами a и b.

Вход:

a = np.array([1, 2, 3, 2, 3, 4, 3, 4, 5, 6])
b = np.array([7, 2, 10, 2, 7, 4, 9, 4, 9, 8])

Желаемый результат:

> array([2, 4])
# code

Задание 12

Удалите из массива a все элементы, присутствующие в массиве b.

Вход:

a = np.array([1, 2, 3, 4, 5])
b = np.array([5, 6, 7, 8, 9])

Желаемый результат:

> array([1, 2, 3, 4])
# code

Задание 13

Получите позиции, в которых элементы массивов a и b совпадают.

Вход:

a = np.array([1, 2, 3, 2, 3, 4, 3, 4, 5, 6])
b = np.array([7, 2, 10, 2, 7, 4, 9, 4, 9, 8])

Желаемый результат:

> (array([1, 3, 5, 7]),)
# code

Задание 14

Получите все элементы от 5 до 10 в массиве a.

Вход:

a = np.array([2, 6, 1, 9, 10, 3, 27])

Желаемый результат:

> (array([6, 9, 10]),)
# code

Задание 16

Поменяйте местами столбцы 1 и 2 в массиве arr.

Вход:

arr = np.arange(9).reshape(3, 3)
arr
# code

Задание 17

Поменяйте местами строки 1 и 2 в массиве arr.

Вход:

arr = np.arange(9).reshape(3, 3)
arr
# code

Задание 18

Поменяйте местами крайние строки 2D-массива arr.

Вход:

arr = np.arange(9).reshape(3, 3)
arr
# code

Задание 19

Поменяйте местами крайние столбцы 2D-массива arr.

Вход:

arr = np.arange(9).reshape(3, 3)
arr

Желаемый результат:

> array([[2, 1, 0],
>        [5, 4, 3],
>        [8, 7, 6]])
# code

Задание 20

Создайте двумерный массив размерностью 5x3, содержащий случайные вещественные числа от 5 до 10.

# code