Добро пожаловать в еще одну захватывающую серию NumPy. В нашей предыдущей статье мы углубились в увлекательный мир NumPy, где исследовали искусство создания массивов NumPy и генерации случайных чисел с использованием функций NumPy. Если вы пропустили эти статьи, вы можете найти их здесь:
В этой статье мы расширим наши знания и углубимся в функциональные возможности, методы и атрибуты, которые предлагает NumPy.
Но прежде чем мы погрузимся в захватывающий контент, я хотел бы воспользоваться моментом, чтобы выразить свою благодарность за вашу поддержку. Ваши лайки, публикации и участие в наших предыдущих статьях очень вдохновляют.
Я хотел бы призвать вас продолжать этот невероятный импульс, ставя лайки, делясь и подписываясь на наш канал. Тем самым вы не только поддерживаете нас, но и помогаете охватить более широкую аудиторию энтузиастов данных, которые могут извлечь выгоду из наших общих знаний.
Вы также можете следить за моим профилем на Medium, чтобы получать более подробные статьи и обновления.
Давайте оставаться на связи и вместе продолжим это удивительное приключение в области науки о данных.
Без лишних слов давайте углубимся в изучение методов массива NumPy. Итак, пристегните ремни, и мы отправляемся в это волнующее путешествие по царству NumPy:
Нахождение формы массива NumPy:
Форма массива относится к размерам или размерам его осей. NumPy предоставляет следующие методы и атрибуты для поиска формы массива:
ndarray.shape:
Атрибут shape
массива NumPy возвращает кортеж, представляющий размеры массива.
arr = np.array([[1, 2, 3], [4, 5, 6]]) arr.shape
Результирующий вывод указывает, что наш массив представляет собой массив 2d, содержащий 2 строки и 3 столбца.
ndarray.ndim:
Атрибут ndim
массива NumPy представляет количество измерений массива.
arr = np.random.randn(3, 5) arr.ndim
Результирующий вывод показывает, что размерность нашего массива равна 2. Итак, это двумерный массив.
Изменение формы массива:
Предположим, у вас есть массив 1d, содержащий 15 чисел, и вы хотите изменить форму массива на массив 2d. Для этого мы можем использовать следующие методы или атрибуты:
нп.изменить ():
Функция np.reshape()
позволяет нам изменять форму массива без изменения его данных.
Общее количество элементов в исходном массиве должно быть таким же, как и в измененном массиве.
# Original array: arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]) # Reshaped array: res_arr = np.reshape(arr, newshape = (3, 4))
Результирующий массив 2d содержит значения без изменения исходных данных.
Вы также можете написать приведенный выше код в одну строку:
arr = np.arange(1, 13).reshape(3, 4) arr
нп.ресайз():
Функция np.resize()
позволяет нам изменять форму массива путем повторения или усечения элементов.
- Он изменяет форму исходного массива.
- Если новая фигура больше, массив будет заполнен повторяющимися значениями.
- Если новая форма меньше, то массив будет усечен до указанного размера.
# Original array: arr = np.array([1, 2, 3, 4, 5]) # Resized Array: res_arr = np.resize(arr, new_shape = (3, 4))
Поскольку новая форма массива больше, чем исходный массив, результирующий массив будет заполнен повторяющимися значениями.
Поиск фактического типа данных массива:
Атрибут .dtype
используется для получения фактического типа данных массива. Вот как вы можете это получить:
arr1 = np.arange(1, 11) arr1.dtype
Результирующий вывод, то есть dtype(‘int32’), показывает, что массив имеет тип данных «integer».
Вопросы упражнения:
- Создайте массив 1d NumPy, содержащий элементы от 1 до 6. Измените форму массива, чтобы он имел форму (2, 3). Распечатайте измененный массив.
- Создайте массив NumPy формы (3, 4), содержащий случайные целые числа в диапазоне от 0 до 9. Измените размер массива, чтобы он имел форму (2, 6). Распечатайте измененный массив и его форму.
- Создайте массив NumPy формы (2, 3, 4), содержащий случайные значения с плавающей запятой. Определить размеры массива.
На сегодня все – 03:
Вот и все на сегодняшнюю сессию. В следующем сеансе мы подробно обсудим индексирование и нарезку, используемые в массивах NumPy, вместе с кодом.
Пожалуйста, подписывайтесь/подписывайтесь, лайкайте, делитесь и аплодируйте, так как это побудит меня писать больше таких сообщений в блогах, особенно в области анализа данных и науки о данных.
Оставайтесь с нами!!
Спасибо!