Библиотека numpy. полезные инструменты

Добро пожаловать в NumPy!

NumPy (NumericalPython) — это библиотека Python с открытым исходным кодом, которая используется практически во всех областях науки и техники. Это универсальный стандарт для работы с числовыми данными в Python, и он лежит в основе научных экосистем Python и PyData. В число пользователей NumPy входят все — от начинающих программистов до опытных исследователей, занимающихся самыми современными научными и промышленными исследованиями и разработками. API-интерфейс NumPy широко используется в пакетах Pandas, SciPy, Matplotlib, scikit-learn, scikit-image и в большинстве других научных и научных пакетов Python.

Библиотека NumPy содержит многомерный массив и матричные структуры данных (дополнительную информацию об этом вы найдете в следующих разделах). Он предоставляет ndarray, однородный объект n-мерного массива, с методами для эффективной работы с ним. NumPy может использоваться для выполнения самых разнообразных математических операций над массивами. Он добавляет мощные структуры данных в Python, которые гарантируют эффективные вычисления с массивами и матрицами, и предоставляет огромную библиотеку математических функций высокого уровня, которые работают с этими массивами и матрицами.

Узнайте больше о NumPy здесь!

GIF черезgiphy

Установка NumPy

Чтобы установить NumPy, я настоятельно рекомендую использовать научный дистрибутив Python. Если вам нужны полные инструкции по установке NumPy в вашей операционной системе, вы можетенайти все детали здесь,

Если у вас уже есть Python, вы можете установить NumPy с помощью

conda install numpy

или

pip install numpy

Если у вас еще нет Python, вы можете рассмотреть возможность использованияанаконда, Это самый простой способ начать. Преимущество этого дистрибутива в том, что вам не нужно слишком беспокоиться об отдельной установке NumPy или каких-либо основных пакетов, которые вы будете использовать для анализа данных, таких как pandas, Scikit-Learn и т. Д.

Если вам нужна более подробная информация об установке, вы можете найти всю информацию об установке наscipy.org,

фотоАдриеннотPexels

Если у вас возникли проблемы с установкой Anaconda, вы можете ознакомиться с этой статьей:

Как импортировать NumPy

Каждый раз, когда вы хотите использовать пакет или библиотеку в своем коде, вам сначала нужно сделать его доступным.

Чтобы начать использовать NumPy и все функции, доступные в NumPy, вам необходимо импортировать его. Это можно легко сделать с помощью этого оператора импорта:

import numpy as np

(Мы сокращаем «numpy» до «np», чтобы сэкономить время и сохранить стандартизированный код, чтобы любой, кто работает с вашим кодом, мог легко его понять и запустить.)

В чем разница между списком Python и массивом NumPy?

NumPy предоставляет вам огромный выбор быстрых и эффективных числовых опций. Хотя список Python может содержать разные типы данных в одном списке, все элементы в массиве NumPy должны быть однородными. Математические операции, которые должны выполняться над массивами, были бы невозможны, если бы они не были однородными.

Зачем использовать NumPy?

фотоPixabayотPexels

Массивы NumPy быстрее и компактнее, чем списки Python. Массив потребляет меньше памяти и намного удобнее в использовании. NumPy использует гораздо меньше памяти для хранения данных и предоставляет механизм задания типов данных, который позволяет оптимизировать код еще дальше.

Что такое массив?

Массив является центральной структурой данных библиотеки NumPy. Это таблица значений, которая содержит информацию о необработанных данных, о том, как найти элемент и как интерпретировать элемент. Он имеет сетку элементов, которые можно проиндексировать в Все элементы имеют одинаковый тип, называемыймассив dtype(тип данных).

Массив может быть проиндексирован набором неотрицательных целых чисел, логическими значениями, другим массивом или целыми числами.рангмассива это количество измерений.формамассива — это кортеж целых чисел, дающий размер массива по каждому измерению.

Одним из способов инициализации массивов NumPy является использование вложенных списков Python.

a = np.array(, , ])

Мы можем получить доступ к элементам в массиве, используя квадратные скобки. Когда вы получаете доступ к элементам, помните, чтоиндексирование в NumPy начинается с 0, Это означает, что если вы хотите получить доступ к первому элементу в вашем массиве, вы получите доступ к элементу «0».

print(a)

Выход:

Тригонометрические функции

Конечно, любой
состоятельный математический пакет должен иметь в своем составе
тригонометрические функции и NumPyздесь не исключение. Наиболее
употребительные из них приведены в следующей таблице:

Название

Описание

np.sin(x)

Вычисление
синуса угла x (в радианах);
xможет быть
числом, списком, массивом (это правило распространяется на все функции этой
таблицы).

np.cos(x)

Вычисление
косинуса угла(ов) x.

np.tan(x)

Вычисление
тангенса угла(ов) x.

np.arccos(x)

Арккосинус
угла(ов) x.

np.arcsin(x)

Арксинус
угла(ов) x.

np.arctan(x)

Арктангенс
угла(ов) x.

Их использование
также вполне очевидно. На входе они могут принимать массив, список или число.
Если это угол, то он представляется в радианах. Например:

a = np.linspace(, np.pi, 10)
res1 = np.sin(a) # возвращает массив синусов углов
np.sin(np.pi/3)
np.cos(, 1.57, 3.17)
res2 = np.cos(a) # возвращает массив косинусов углов
np.arcsin(res1) # возвращает арксинусы от значений res1

Причем, все эти
функции работают быстрее аналогичных функций языка Python. Поэтому, при
использовании библиотеки NumPy предпочтение лучше отдавать именно ей,
а не языку Python при
тригонометрических вычислениях.

Линейная алгебра

SciPy обладает очень быстрыми возможностями линейной алгебры, поскольку он построен с использованием библиотек ATLAS LAPACK и BLAS. Библиотеки доступны даже для использования, если вам нужна более высокая скорость, но в этом случае вам придется копнуть глубже.

Все процедуры линейной алгебры в SciPy принимают объект, который можно преобразовать в двумерный массив, и на выходе получается один и тот же тип.

Давайте посмотрим на процедуру линейной алгебры на примере. Мы попытаемся решить систему линейной алгебры, что легко сделать с помощью команды scipy linalg.solve.

Этот метод ожидает входную матрицу и вектор правой части:

# Import required modules/ libraries
import numpy as np
from scipy import linalg

# We are trying to solve a linear algebra system which can be given as:
#               1x + 2y =5
#               3x + 4y =6

# Create input array
A= np.array(,])

# Solution Array
B= np.array(,])

# Solve the linear algebra
X= linalg.solve(A,B)

# Print results
print(X)

# Checking Results
print("\n Checking results, following vector should be all zeros")
print(A.dot(X)-B)

Транспонирование и изменение формы матриц в numpy

Нередки случаи, когда нужно повернуть матрицу. Это может потребоваться при вычислении скалярного произведения двух матриц. Тогда возникает необходимость наличия совпадающих размерностей. У массивов NumPy есть полезное свойство под названием , что отвечает за транспонирование матрицы.

Некоторые более сложные ситуации требуют возможности переключения между размерностями рассматриваемой матрицы. Это типично для приложений с машинным обучением, где некая модель может запросить определенную форму вывода, которая является отличной от формы начального набора данных. В таких ситуациях пригодится метод из NumPy. Здесь от вас требуется только передать новые размерности для матрицы. Для размерности вы можете передать , и NumPy выведет ее верное значение, опираясь на данные рассматриваемой матрицы:

Еще больше размерностей NumPy

NumPy может произвести все вышеперечисленные операции для любого количества размерностей. Структура данных, расположенных центрально, называется , или n-мерным массивом.

В большинстве случаев для указания новой размерности требуется просто добавить запятую к параметрам функции NumPy:

Shell

array(,
,
],

,
,
],

,
,
],

,
,
]])

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

array(1.,1.,

1.,1.,

1.,1.,

1.,1.,

1.,1.,

1.,1.,

1.,1.,

1.,1.,

1.,1.,

1.,1.,

1.,1.,

1.,1.)

Случайные величины (numpy.random)¶

В модуле numpy.random собраны функции для генерации массивов случайных чисел различных распределений и свойств.
Их можно применять для математического моделирования. Функция random() создает массивы из псевдослучайных чисел,
равномерно распределенных в интервале (0, 1). Функция RandomArray.randint() для получения массива равномерно
распределенных чисел из заданного интервала и заданной формы. Можно получать и случайные перестановки с помощью
RandomArray.permutation(). Доступны и другие распределения для получения массива нормально распределенных величин
с заданным средним и стандартным отклонением:

Следующая таблица приводит основные функции модуля.

Команда Описание
rand(d0, d1, …, dn) набор случайных чисел заданной формы
randn() набор (или наборы) случайных чисел со стандартным нормальным распределением
randint(low) случайные целые числа от low (включая) до high (не включая).
random_integers(low) случайные целые числа между low и high (включая).
random_sample() случайные рациональные числа из интервала [0.0, 1.0).
bytes(length) случайные байты
shuffle(x) тасовка элементов последовательностина месте
permutation(x) возвращает последовательность, переставленных случайным образом элементов
seed() перезапуск генератора случайных чисел
beta(a, b) числа с Бетта- распределением \(f(x,\alpha,\beta)=\frac{1}{B(\alpha,\beta)}x^{\alpha-1}(1-x)^{\beta-1}\)
\(B(\alpha,\beta)=\int_0^1 t^{\alpha-1}(1-t)^{\beta-1}dt\)
binomial(n, p) числа с биномиальным распределением \(P(N)= \left( \frac{n}{N} \right) p^N (1-p)^{n-N}\)
chisquare(df) числа с распределением хи-квадрат \(p(x)=\frac{(1/2)^{k/2}}{\Gamma(k/2)} x^{k/2-1} e^{-x/2}\)
mtrand.dirichlet(alpha) числа с распределением Дирихле (alpha – массив параметров).
exponential() числа с экспоненциальным распределением \(f(x,\frac{1}{\beta})=\frac{1}{\beta}exp(-\frac{x}{\beta})\)
f(dfnum, dfden) числа с F распределением (dfnum – число степеней свободы числителя > 0; dfden –число степеней
свободы знаменателя >0.)
gamma(shape) числа с Гамма — распределением
geometric(p) числа с геометрическим распределением
gumbel() числа с распределением Гумбеля
hypergeometric(ngood, nbad, nsample) числа с гипергеометрическим распределением (n = ngood, m = nbad, and N = number of samples)
laplace() числа с распределением Лапласа
logistic() числа с логистическим распределением
lognormal() числа с логарифмическим нормальным распределением
logseries(p) числа с распределением логарифмического ряда
multinomial(n, pvals) числа с мультиномиальным распределением
multivariate_normal(mean, cov) числа с мульти нормальным распределением (mean – одномерный массив средних значений;
cov – двухмерный симметричный, полож. определенный массив (N, N) ковариаций
negative_binomial(n, p) числа с отрицательным биномиальным распределением
noncentral_chisquare(df, nonc) числа с нецентральным распределением хи-квадрат
noncentral_f(dfnum, dfden, nonc) числа с нецентральным F распределением (dfnum — целое > 1; dfden – целое > 1; nonc : действительное >= 0)
normal() числа с нормальным распределением
pareto(a) числа с распределением Паретто
poisson() числа с распределением Пуассона
power(a) числа со степенным распределением
rayleigh() числа с распределением Релея
standard_cauchy() числа со стандартным распределением Коши
standard_exponential() числа со стандартным экспоненциальным распределением
standard_gamma(shape) числа с гамма- распределением
standard_normal() числа со стандартным нормальным распределением (среднее=0, сигма=1).
standard_t(df) числа со стандартным распределением Стьюдента с df степенями свободы
triangular(left, mode, right) числа из треугольного распределения
uniform() числа с равномерным распределением
vonmises(mu, kappa) числа с распределением Майсеса
(I- модифицированная функция Бесселя)
wald(mean, scale) числа с распределением Вальда
weibull(a) числа с распределением Вайбулла
zipf(a) числа с распределением Зипфа (зетта функция Римана)

Примеры

Простой пример применительно применительно к массиву NUMPY:

>>> import numpy as np
>>> a = np.array(, ])
>>> np.shape(a)
(2, 2)

Вы импортируете Numpy Library и создаете двумерный массив из списка списков. Если вы передаете множество массива в функцию формы, она возвращает кортеж с двумя значениями). Каждое измерение хранит количество элементов в этом измерении). Как это квадратичная матрица 2 × 2, результат (2,2).

Следующая форма является еще одним примером многомерного массива:

>>> b = np.array(, ])
>>> b
array(,
       ])
>>> b.shape
(2, 4)
>>> np.shape(b)
(2, 4)

Форма сейчас с двумя рядами и четырьмя колоннами.

np.shape () vs array.shape

Обратите внимание, что результат и одинаково, если это небольшой массив. Если Разве немаловая массива не в списке, вы не можете использовать В качестве списков нет атрибута формы

Давайте посмотрим на этот пример:

>>> b = , ]
>>> np.shape(b)
(2, 4)

Функция возвращает одинаковую форму кортежа – даже если вы передаете вложенный список в функцию вместо Numpy Array.

Но если вы попытаетесь получить доступ к списку .shape Атрибут, numpy бросает следующую ошибку:

>>> b.shape
Traceback (most recent call last):
  File "", line 1, in 
    b.shape
AttributeError: 'list' object has no attribute 'shape'#9>

Итак, разница между и Это то, что первое можно использовать для всех видов Array_Like Объекты, в то время как последний можно использовать только для применения ToMpy с атрибут.

Рекомендация Numpy Форма

Атрибут формы всегда возвращает кортеж, который сообщает нам длину каждого измерения. Одномерный массив представляет собой вектор строки, и его форма – это одно значение, которое следует запястья. Одномерные массивы не имеют строк и столбцов, поэтому атрибут формы возвращает отдельный кортеж.

Давайте посмотрим на пример:

import numpy as np

#an one-dimensional NumPy array
arr = np.arange(10)

#print an array
print(arr)
# 

print(arr.shape)
# (10, )

Кодовый фрагмент также использует Numpy arange Функция для создания начального массива последующих значений от 0 до 9. Пожалуйста, найдите подробное обсуждение Numpy arange Функция в этом блоге Finxter Blog: https://blog.finxter.com/numpy-arange/ Отказ

Атрибут формы двумерного массива (также называемого матрицей) дает нам кортеж. Форма возвращает количество элементов вдоль каждого измерения, которое является количеством рядов и столбцов в двухмерном массиве.

# A two-dimensional NumPy array
import numpy as np

arr = np.array(, ])
print(arr.shape)
# (2, 5)

В следующем примере для формы трехмерных массивов.

# A three-dimensional array
import numpy as np

arr = np.array(, ,  ],, ,  ] ])
print(arr.shape)
# (2, 3, 4)

Требуется некоторая практика, чтобы понять кортеж формы для многомерных массивов. Размеры, представленные кортежом, читаются из наружу. Если вы соблюдаете скобки, самый простой кронштейн является частью основного синтаксиса для всего массива. В форме кортежа 2 представляет собой второй набор скобок. Если вы считаете их, вы увидите, что в этом измерении есть 2 элемента.

1-й элемент

2-й элемент

Каждый элемент содержит еще 3 элемента во втором измерении. Если вы думаете о вложенных списках, вы можете нарисовать аналогию. Эти элементы:

1-й элемент

2-й элемент

3-й элемент [

Наконец, номер 4 представляет количество элементов в третьем измерении. Это самые внутренние элементы. Например 0, 11, 15 и 16.

Вы хотите стать Numpy Master? Проверьте нашу интерактивную книгу головоломки Coffe Break Numpy И повысить свои навыки науки о данных! (Ссылка Amazon открывается на новой вкладке.)

Универсальные статистические функции

Помимо тригонометрических функций, Python NumPy также предлагает нам универсальные статистические функции. Некоторые из них перечислены ниже:

  1. функция numpy.amin () : Представляет минимальное значение из массива.
  2. функция numpy.amax () : Представляет максимальное значение из массива.
  3. функция numpy.ptp () : Представляет диапазон значений массива по оси, который вычисляется путем вычитания минимального значения из максимального значения.
  4. функция numpy.average () : вычисляет среднее значение элементов массива.

Пример:

import numpy as np

data = np.array()

print('Minimum and maximum data values from the array: ')
print(np.amin(data))
print(np.amax(data))

print('Range of the data: ')
print(np.ptp(data))

print('Average data value of the array: ')
print(np.average(data))

Выход:

Minimum and maximum data values from the array:
7.9
56.0
Range of the data:
48.1
Average data value of the array:
27.025000000000002

Использование функции reshape()

Первым делом, прежде чем попрактиковаться в использовании данной функции, вам следует импортировать библиотеку NumPy. После этого можно приступать к работе.

Далее мы покажем различные варианты использования функции .

Пример 1: преобразование одномерного массива в двумерный

Итак, давайте разберем, как с помощью функции преобразовать одномерный массив в двумерный.

В этом сценарии для создания одномерного массива из 10 элементов используется функция .

Первая функция используется для преобразования одномерного массива в двумерный, состоящий из 2 строк и 5 столбцов. Здесь функция вызывается с использованием имени модуля .

А вторая функция используется для преобразования одномерного массива в двумерный, состоящий из 5 строк и 2 столбцов. Здесь уже функция вызывается с использованием массива NumPy с именем .

import numpy as np

np_array = np.arange(10)
print("Исходный массив : \n", np_array)

new_array = np.reshape(np_array, (2, 5))
print("\n Измененный массив с 2 строками и 5 столбцами : \n", new_array)

new_array = np_array.reshape(5, 2)
print("\n Измененный массив с 5 строками и 2 столбцами : \n", new_array)

Если вы запустите описанную выше программу, то получите результат, как на следующем скриншоте. Первый показывает исходный массив, а второй и третий выводят преобразованные массивы.

Пример 2: преобразование одномерного массива в трехмерный

Теперь давайте посмотрим, как при помощи функции преобразовать одномерный массив в трехмерный.

Воспользуемся функцией для создания одномерного массива из 12 элементов.

Функция преобразует созданный одномерный массив в трехмерный размером 2х2х3. Здесь функция вызывается с использованием NumPy-массива .

import numpy as np

np_array = np.array()
print("Исходный массив : \n", np_array)

new_array = np_array.reshape(2, 2, 3)
print("\n Преобразованный 3D массив : \n", new_array)

Выполнив данный код, вы получите следующий вывод. Как и в прошлый раз, первый показывает изначальный массив, второй – преобразованный массив.

Пример 3: изменение формы массива NumPy с учетом порядка

Как вы помните, у функции есть третий — опциональный — аргумент, задающий порядок индексации. Давайте посмотрим, как он применяется на практике.

Как и в первом примере, воспользуемся функцией для создания одномерного массива из 15 элементов.

Первая функция используется для создания двумерного массива из 3 строк и 5 столбцов с упорядочением в стиле C. В то время как вторая функция используется для создания двумерного массива из 3 строк и 5 столбцов с упорядочением в стиле Фортрана.

import numpy as np

np_array = np.arange(15)
print("Исходный массив : \n", np_array)

new_array1 = np.reshape(np_array, (3, 5), order='C')
print("\n Преобразованный 2D массив, упорядоченный в стиле С : \n", new_array1)

new_array2 = np.reshape(np_array, (3, 5), order='F')
print("\n Преобразованный 2D массив, упорядоченный в стиле Фортрана : \n", new_array2)

Давайте выполним наш код. Вот, что мы получим. Как и раньше, первый показывает исходный массив значений. Второй показывает значения массива, упорядоченного по строкам. Третий – упорядоченного по столбцам.

Полиномы (numpy.polynomial)¶

Модуль полиномов обеспечивает стандартные функции работы с полиномами разного вида. В нем реализованы полиномы
Чебышева, Лежандра, Эрмита, Лагерра. Для полиномов определены стандартные арифметические функции ‘+’, ‘-‘, ‘*’, ‘//’,
деление по модулю, деление с остатком, возведение в степень и вычисление значения полинома

Важно задавать область
определения, т.к. часто свойства полинома (например при интерполяции) сохраняются только на определенном интервале.
В зависимости от класса полинома, сохраняются коэффициенты разложения по полиномам определенного типа, что позволяет
получать разложение функций в ряд по полиномам разного типа

Типы полиномов Описание
Polynomial(coef) разложение по степеням «x»
Chebyshev(coef) разложение по полиномам Чебышева
Legendre(coef) разложение по полиномам Лежандра
Hermite(coef) разложение по полиномам Эрмита
HermiteE(coef) разложение по полиномам Эрмита_Е
Laguerre(coef) разложение по полиномам Лагерра
  • coef – массив коэффициентов в порядке увеличения
  • domain – область определения проецируется на окно
  • window – окно. Сдвигается и масштабируется до размера области определения

Некоторые функции (например интерполяция данных) возвращают объект типа полином. У этого объекта есть набор методов,
позволяющих извлекать и преобразовывать данные.

Методы полиномов Описание
__call__(z) полином можно вызвать как функцию
convert() конвертирует в полином другого типа, с другим окном и т.д
copy() возвращает копию
cutdeg(deg) обрезает полином до нужной степени
degree() возвращает степень полинома
deriv() вычисляет производную порядка m
fit(x, y, deg) формирует полиномиальную интерполяцию степени deg для данных (x,y) по методу наименьших квадратов
fromroots(roots) формирует полином по заданным корням
has_samecoef(p) проверка на равенство коэффициентов.
has_samedomain(p) проверка на равенство области определения
has_samewindow(p) проверка на равенство окна
integ() интегрирование
linspace() возвращает x,y — значения на равномерной сетке по области определения
mapparms() возвращает коэффициенты масштабирования
roots() список корней
trim() создает полином с коэффициентами большими tol
truncate(size) ограничивает ряд по количеству коеффициентов
  • p – полином
  • x, y – набор данных для аппроксимации
  • deg – степень полинома
  • domain – область определения
  • rcond – относительное число обусловленности элементы матрицы интерполяции с собственными значениями меньшими данного будут отброшены.
  • full – выдавать дополнительную информацию о качестве полинома
  • w – веса точек
  • window – окно
  • roots – набор корней
  • m – порядок производной (интеграла)
  • k – константы интегрирования
  • lbnd – нижняя граница интервала интегрирования
  • n – число точек разбиения
  • size – число ненулевых коэффициентов

Работа с матрицей с помощью NumPy

Мы можем выполнять все операции с матрицей, используя numpy.array(), такие как сложение, вычитание, транспонирование, нарезание матрицы и т. д.

Добавление матрицы

Мы создадим две матрицы с помощью функции numpy.array() и добавим их с помощью оператора +. Давайте разберемся в следующем примере.

Пример —

 
import numpy as np 
mat1 = np.array(, , ]) 
mat2 = np.array(, , ]) 
mat3 = mat1 + mat2   
print("The matrix addition is: ") 
print(mat3) 

Выход:

The matrix addition is:  
 
  
 ] 

Умножение

Мы будем использовать метод numpy.dot() для умножения обеих матриц. Это точечное умножение матриц mat1 и mat2, обрабатывает 2D-массив и выполняет умножение.

Пример —

 
import numpy as np 
mat1 = np.array(, ]) 
mat2 =  np.array(, ]) 
mat3 = mat1.dot(mat2)   
print("The matrix is:") 
print(mat3) 

Выход:

The matrix is: 
 
 ] 

Нарезка элементов

Мы можем разрезать элемент матрицы, как в стандартном списке Python. Нарезка возвращает элемент на основе индекса начала / конца. Мы также можем сделать отрицательную нарезку. Синтаксис приведен ниже.

Синтаксис —

 
arr  

Arr представляет имя матрицы. По умолчанию начальный индекс равен 0, например — , это означает, что начальный индекс равен 0. Если мы не предоставим конечное значение, он будет учитывать длину массива. Мы можем передавать отрицательные значения индекса как в начало, так и в конец. В следующем примере мы применим нарезку в обычном массиве, чтобы понять, как она работает.

Пример —

 
import numpy as np 
 
arr = np.array() 
print(arr) # It will print the elements from 2 to 4 
print(arr) # It will print the elements from 0 to 3 
print(arr) # It will print the elements from 3 to length of the array. 

Выход:

Теперь мы реализуем нарезку по матрице. Для выполнения следуйте синтаксису ниже.

Mat1

В приведенном выше синтаксисе:

  • Первое начало / конец представляет строки, которые означают выбор строк матрицы.
  • Первое начало / конец представляет столбцы, которые означают выбор столбца матрицы.

Мы будем выполнять нарезку в приведенной ниже матрице.

 
mat1 = np.array(, 
    , 
    , 
    ]) 

Вышеупомянутая матрица состоит из четырех строк. В 0-м ряду есть , в 1-й строке — и так далее. В нем пять столбцов. Рассмотрим на примере.

Пример —

 
import numpy as np  
mat1 = np.array(, 
    , 
    , 
    ]) 
print(mat1) 

Выход:

 
 ] 

Объяснение:

В приведенном выше примере мы напечатали первую и вторую строки и нарезали первый, второй и третий столбцы. Согласно синтаксису нарезки мы можем получить любые строки и столбцы.

Пример — печать первой строки и всех столбцов:

 
import numpy as np 
mat1 = np.array(, 
    , 
    , 
    ]) 
print(mat1) 

Выход:

] 

Пример — печать строк матрицы:

 
import numpy as np 
mat1 = np.array(, , ]) 
print(mat1)  #first row 
print(mat1) # the second row 
print(mat1) # -1 will print the last row 

Выход:

Аргумент ключевого слова axis

Это устанавливает axis для сохранения образцов. Он используется только в том случае, если начальная и конечная точки относятся к типу данных массива.

По умолчанию (axis = 0) образцы будут располагаться вдоль новой оси, вставленной в начало. Мы можем использовать axis = -1, чтобы получить ось в конце.

import numpy as np

p = np.array(, ])
q = np.array(, ])

r = np.linspace(p, q, 3, axis=0)
print(r)
s = np.linspace(p, q, 3, axis=1)
print(s)

Вывод

array(,
        ],

       ,
        ],

       ,
        ]])

array(,
        ,
        ],

       ,
        ,
        ]])

В первом случае, поскольку axis = 0, мы берем пределы последовательности от первой оси.

Здесь пределы – это пары подмассивов и , а также и , берущие элементы из первой оси p и q. Теперь мы сравниваем соответствующие элементы из полученной пары, чтобы сгенерировать последовательности.

Таким образом, последовательности , ] для первой строки и ], ] для второй пары (строки), которая оценивается и объединяется для формирования , ], , ], , ]],

Во втором случае будут вставлены новые элементы в axis = 1 или столбцы. Таким образом, новая ось будет создана через последовательности столбцов. вместо последовательностей строк.

Последовательности с по и по рассматриваются и вставляются в столбцы результата, в результате чего получается , , ], , , ]].

Будучи генератором линейной последовательности, функция numpy.arange() в Python используется для генерации последовательности чисел в линейном пространстве с равномерным размером шага.

Это похоже на другую функцию, numpy.linspace() в Python, которая также генерирует линейную последовательность с одинаковым размером шага.

Давайте разберемся, как мы можем использовать эту функцию для генерации различных последовательностей.

Вывод

В заключение эта статья предоставляет вам всю информацию о функции Numpy variance в Python. Функция дисперсии используется для нахождения дисперсии заданного набора данных. Импорт модуля Numpy дает доступ к созданию ndarray и выполнению таких операций, как среднее стандартное отклонение. Более того, дисперсия над ним осуществляется с помощью специальных функций, встроенных в сам модуль Numpy. Вы можете обратиться к приведенным выше примерам для любых запросов, касающихся функции Numpy var() в Python.

Однако, если у вас есть какие-либо сомнения или вопросы, дайте мне знать в разделе комментариев ниже. Я постараюсь помочь вам как можно скорее.

Однако, если у вас есть какие-либо сомнения или вопросы, дайте мне знать в разделе комментариев ниже. Я постараюсь помочь вам как можно скорее.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector