English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
numpy.amin() используется для вычисления минимального значения элементов массива по заданному направлению оси.
numpy.amax() используется для вычисления максимального значения элементов массива по заданному направлению оси.
import numpy as np a = np.array([[3, 7, 5], [8, 4, 3], [2, 4, 9]]) print('Наш массив:', a) print('Вызов функции amin():', np.amin(a, 1)) print('Вновь вызов функции amin():', np.amin(a, 0)) print('Вызов функции amax():', np.amax(a)) print('Вновь вызов функции amax():', np.amax(a, axis=0))
Результат вывода:
Наш массив: [[3 7 5] [8 4 3] [2 4 9] Вызов функции amin(): [3 3 2] Вновь вызов функции amin(): [2 4 3] Вызов функции amax(): 9 Вновь вызов функции amax(): [8 7 9]
Функция numpy.ptp() вычисляет разницу между максимальным и минимальным значениями элементов массива (максимальное значение - минимальное значение).
import numpy as np a = np.array([[3, 7, 5], [8, 4, 3], [2, 4, 9]]) print('Вызов функции ptp():', np.ptp(a)) print('Вызов функции ptp() по оси 1:', np.ptp(a, axis=1)) print('Вызов функции ptp() по оси 0:', np.ptp(a, axis=0))
Результат вывода:
Вызов функции ptp(): 7 Вызов функции ptp() по оси 1: [4 5 7] Вызов функции ptp() по оси 0: [6 3 6]
Процентиль - это измерение, используемое в статистике, которое представляет собой процент значений наблюдений, которые меньше этого значения. Функция numpy.percentile() принимает следующие параметры.
numpy.percentile(a, q, axis)
Описание параметров:
a: входной массив q: вычисляемый процентиль, в диапазоне от 0 до 100 axis: ось, по которой вычисляются процентили
Сначала определим процентили:
Второй p-й процентиль - это такое значение, которое делает так, чтобы не менее p% значений данных было меньше или равно этому значению, и не менее (100-p)% значений данных было больше или равно этому значению.
Пример: Результаты入学考试 в высших учебных заведениях часто сообщаются в виде百分илей. Например, предположим, что原始ный балл студента по китайскому языку на вступительном экзамене составляет 54 балла. Как его результат сравнивается с другими студентами, участвующими в том же экзамене, трудно понять. Но если原始ный балл 54恰好 соответствует 70-й百分иле, мы можем знать, что около 70% студентов имеют более низкие баллы, а около 30% студентов имеют более высокие баллы.
Здесь p = 70.
import numpy as np a = np.array([[10, 7, 4], [3, 2, 1]]) # 50% - это процентиль, который является медианой после排序 в массиве a print('Вызов функции percentile():', np.percentile(a, 50)) # axis = 0, расчет по вертикали print(np.percentile(a, 50, axis=0)) # axis = 1, расчет по горизонтали print(np.percentile(a, 50, axis=1)) # Сохранение размеров print(np.percentile(a, 50, axis=1, keepdims=True))
Результат вывода:
Вызов функции percentile(): 3.5 [6.5 4.5 2.5] [7. 2.] [[7.]] [2.]
Функция numpy.median() используется для вычисления медианы элементов массива a.
import numpy as np a = np.array([[30,65,70],[80,95,10],[50,90,60]]) print('Вызов функции median():', np.median(a)) print('Вызов функции median() по оси 0:', np.median(a, axis=0)) print('Вызов функции median() по оси 1:', np.median(a, axis=1))
Результат вывода:
Вызов функции median(): 65.0 Вызов функции median() по оси 0: [50. 90. 60.] Вызов функции median() по оси 1: [65. 80. 60.]
Функция numpy.mean() возвращает арифметическое среднее элементов массива. Если указана ось, то вычисление ведется по ней.
Среднее арифметическое является суммой элементов по оси, деленной на количество элементов.
import numpy as np a = np.array([[1,2,3],[3,4,5],[4,5,6]]) print('Вызов функции mean():', (np.mean(a))) print('Вызов функции mean() по оси 0:', np.mean(a, axis=0)) print('Вызов функции mean() по оси 1:', np.mean(a, axis=1))
Результат вывода:
Вызов функции mean(): 3.6666666666666665 Вызов функции mean() по оси 0: [2.66666667, 3.66666667, 4.66666667] Вызов функции mean() по оси 1: [2.0, 4.0, 5.0]
Функция numpy.average() вычисляет среднее арифметическое значений массива с учетом весов, указанных в другом массиве.
Функция принимает параметр оси. Если ось не указана, массив разворачивается.<
Среднее арифметическое с весами рассчитывается, умножая каждый элемент на соответствующий вес, затем суммируя результаты и деля на общее количество единиц.
Для вычисления среднеарифметического с весами массива [1, 2, 3, 4] и соответствующих весов [4, 3, 2, 1] необходимо сложить произведение соответствующих элементов и разделить на сумму весов.
Среднее арифметическое с весами = (1*4+2*3+3*2+4*1)/(4+3+2+1)
import numpy as np a = np.array([1, 2, 3, 4]) print('Вызов функции average():', np.average(a)) # При отсутствии указания весов эквивалентно функции mean wts = np.array([4, 3, 2, 1]) print('Повторный вызов функции average():', np.average(a, weights=wts)) # Если параметр returned установлен в True, то возвращается сумма весов print('Сумма весов:', np.average([1, 2, 3, 4], weights=[4, 3, 2, 1], returned=True))
Результат вывода:
Вызов функции average(): 2.5 Повторный вызов функции average(): 2.0 Сумма весов: (2.0, 10.0)
В многоомерном массиве можно указать ось для вычислений.
import numpy as np a = np.arange(6).reshape(3, 2) wt = np.array([3, 5]) print('Измененный массив:', np.average(a, axis=1, weights=wt)) print('Измененный массив:', np.average(a, axis=1, weights=wt, returned=True))
Результат вывода:
Измененный массив: [0.625 2.625 4.625] Измененный массив: (array([0.625, 2.625, 4.625]), array([8., 8., 8.]))
Стандартное отклонение является мерой степениdispersion значений среднего значения набора данных.
Стандартное отклонение является арифметической квадратной корнем дисперсии.
Формула стандартного отклонения такая:
std = sqrt(mean((x - x.mean())**2))
Если массив равен [1,2,3,4], то его среднее значение равно 2.5. Таким образом, квадраты разностей равны [2.25,0.25,0.25,2.25], и среднее значение квадратов делится на 4, то есть sqrt(5/4), результат равен 1.1180339887498949.
import numpy as np print(np.std([1,2,3,4]))
Результат вывода:
1.1180339887498949
В статистике дисперсия (дисперсия выборки) является средним значением квадратов разностей каждого значения выборки от среднего значения всех значений, то есть mean((x - x.mean())** 2).
Иначе говоря, стандартное отклонение является квадратным корнем дисперсии.
import numpy as np print(np.var([1,2,3,4]))
1.25