медиана#
- scipy.ndimage.медиана(входные данные, метки=None, index=None)[источник]#
Вычислить медиану значений массива по помеченным областям.
- Параметры:
- входные данныеarray_like
Array_like значений. Для каждой области, заданной метки, медианное значение входные данные вычисляется по области.
- меткиarray_like, необязательный
Массивоподобный объект целых чисел, отмечающий различные области, по которым вычисляется медианное значение входные данные должно быть вычислено. метки должен иметь ту же форму, что и входные данные. Если метки не указан, возвращается медиана по всему массиву.
- indexarray_like, необязательный
Список меток регионов, которые учитываются при вычислении медиан. Если index равен None, медиана вычисляется по всем элементам, где метки возвращается ненулевое значение.
- Возвращает:
- медианаfloat или список floats
Список медиан входные данные по областям, определенным метки и чей индекс находится в index. Если index или метки не указаны, возвращается число с плавающей точкой: медианное значение входные данные if метки равно None, и медианное значение элементов, где метки больше нуля, если index равно None.
Примечания
Функция возвращает список Python, а не массив NumPy, используйте np.array для преобразования списка в массив.
Примеры
>>> from scipy import ndimage >>> import numpy as np >>> a = np.array([[1, 2, 0, 1], ... [5, 3, 0, 4], ... [0, 0, 0, 7], ... [9, 3, 0, 0]]) >>> labels, labels_nb = ndimage.label(a) >>> labels array([[1, 1, 0, 2], [1, 1, 0, 2], [0, 0, 0, 2], [3, 3, 0, 0]], dtype=int32) >>> ndimage.median(a, labels=labels, index=np.arange(1, labels_nb + 1)) [2.5, 4.0, 6.0] >>> ndimage.median(a) 1.0 >>> ndimage.median(a, labels=labels) 3.0