numpy.recarray
-
class numpy.recarray[source] -
Создаёт массив ndarray, позволяющий получать доступ к полям с помощью атрибутов.
Массивы могут иметь типы данных, содержащие поля, аналогичные столбцам в электронных таблицах. Примером является
[(x, int), (y, float)], где каждая запись в массиве представляет собой пару(int, float). Обычно к этим атрибутам обращаются с помощью поиска по словарю, например,arr['x']иarr['y']. Массивы записей позволяют обращаться к полям как к членам массива, используяarr.xиarr.y.Параметры: -
shape : tuple -
Форма выходного массива.
-
dtype : data-type, optional -
Требуемый тип данных. По умолчанию тип данных определяется из
formats,names,titles,alignedиbyteorder. -
formats : list of data-types, optional -
Список, содержащий типы данных для различных столбцов, например,
['i4', 'f8', 'i4'].formatsне поддерживает новую конвенцию использования типов напрямую, т.е.(int, float, int). Обратите внимание, чтоformatsдолжен быть списком, а не кортежем. Учитывая, чтоformatsнесколько ограничен, мы рекомендуем указатьdtypeвместо этого. -
names : tuple of str, optional -
Имя каждого столбца, например,
('x', 'y', 'z'). -
buf : buffer, optional -
По умолчанию создаётся новый массив заданной формы и типа данных. Если
bufуказан и является объектом, предоставляющим интерфейс буфера, массив будет использовать память из существующего буфера. В этом случае доступны ключевые словаoffsetиstrides.
Возвращает: -
rec : recarray -
Пустой массив заданной формы и типа.
Другие параметры: -
titles : tuple of str, optional -
Псевдонимы для имён столбцов. Например, если
namesбыл('x', 'y', 'z')иtitles—('x_coordinate', 'y_coordinate', 'z_coordinate'), тоarr['x']эквивалентно какarr.x, так иarr.x_coordinate. -
byteorder : {‘<’, ‘>’, ‘=’}, optional -
Порядок байтов для всех полей.
-
aligned : bool, optional -
Выровнять поля в памяти так, как это делает компилятор C.
-
strides : tuple of ints, optional -
Буфер (
buf) интерпретируется в соответствии с этими шагами (шаги определяют, сколько байт занимает каждый элемент массива, строка, столбец и т. д. в памяти). -
offset : int, optional -
Начать чтение буфера (
buf) с этого смещения. -
order : {‘C’, ‘F’}, optional -
Строчный (C-стиль) или столбцовый (Fortran-стиль) порядок.
См. также
-
rec.fromrecords - Создать массив записей из данных.
-
record - основной тип данных для
recarray. -
format_parser - определяет тип данных из форматов, имён, заголовков.
Примечания
Этот конструктор можно сравнить с
empty: он создаёт новый массив записей, но не заполняет его данными. Чтобы создать массив записей из данных, используйте один из следующих методов:- Создайте стандартный массив ndarray и преобразуйте его в массив записей, используя
arr.view(np.recarray) - Используйте ключевое слово
buf. - Используйте
np.rec.fromrecords.
Примеры
Создайте массив с двумя полями,
xиy:>>> x = np.array([(1.0, 2), (3.0, 4)], dtype=[('x', '<f8'), ('y', '<i8')]) >>> x array([(1., 2), (3., 4)], dtype=[('x', '<f8'), ('y', '<i8')])>>> x['x'] array([1., 3.])
Представьте массив как массив записей:
>>> x = x.view(np.recarray)
>>> x.x array([1., 3.])
>>> x.y array([2, 4])
Создайте новый, пустой массив записей:
>>> np.recarray((2,), ... dtype=[('x', int), ('y', float), ('z', int)]) #doctest: +SKIP rec.array([(-1073741821, 1.2249118382103472e-301, 24547520), (3471280, 1.2134086255804012e-316, 0)], dtype=[('x', '<i4'), ('y', '<f8'), ('z', '<i4')])Атрибуты: -
T -
Транспонированный массив.
-
base -
Базовый объект, если память взята из другого объекта.
-
ctypes -
Объект для упрощения взаимодействия массива с модулем ctypes.
-
data -
Объект буфера Python, указывающий на начало данных массива.
-
dtype -
Тип данных элементов массива.
-
flags -
Информация о структуре памяти массива.
-
flat -
Итератор по массиву в виде одномерного массива.
-
imag -
Мнимая часть массива.
-
itemsize -
Длина одного элемента массива в байтах.
-
nbytes -
Общее количество байтов, используемых элементами массива.
-
ndim -
Количество измерений массива.
-
real -
Вещественная часть массива.
-
shape -
Кортеж размеров массива.
-
size -
Количество элементов в массиве.
-
strides -
Кортеж байтов для перемещения по каждому измерению при обходе массива.
Методы
-
all([axis, out, keepdims])Возвращает True, если все элементы равны True. any([axis, out, keepdims])Возвращает True, если любой из элементов aравен True.argmax([axis, out])Возвращает индексы максимальных значений вдоль заданной оси. argmin([axis, out])Возвращает индексы минимальных значений вдоль заданной оси массива a.argpartition(kth[, axis, kind, order])Возвращает индексы, которые разделяют этот массив. argsort([axis, kind, order])Возвращает индексы, которые отсортируют этот массив. astype(dtype[, order, casting, subok, copy])Копия массива, преобразованная к указанному типу. byteswap([inplace])Меняет порядок байтов элементов массива. choose(choices[, out, mode])Использует массив индексов для построения нового массива из набора вариантов. clip([min, max, out])Возвращает массив, значения которого ограничены [min, max].compress(condition[, axis, out])Возвращает выбранные срезы этого массива вдоль заданной оси. conj()Комплексно сопрягает все элементы. conjugate()Возвращает комплексно сопряжённое значение, поэлементно. copy([order])Возвращает копию массива. cumprod([axis, dtype, out])Возвращает кумулятивное произведение элементов вдоль заданной оси. cumsum([axis, dtype, out])Возвращает кумулятивную сумму элементов вдоль заданной оси. diagonal([offset, axis1, axis2])Возвращает указанные диагонали. dot(b[, out])Скалярное произведение двух массивов. dump(file)Сохраняет пикл массива в указанный файл. dumps()Возвращает пикл массива в виде строки. fill(value)Заполняет массив скалярным значением. flatten([order])Возвращает копию массива, сжатого в одну размерность. getfield(dtype[, offset])Возвращает поле данного массива как определённого типа. item(*args)Копирует элемент массива в стандартный скаляр Python и возвращает его. itemset(*args)Вставляет скаляр в массив (скаляр преобразуется к типу массива, если это возможно). max([axis, out, keepdims, initial, where])Возвращает максимальное значение вдоль заданной оси. mean([axis, dtype, out, keepdims])Возвращает среднее значение элементов массива вдоль заданной оси. min([axis, out, keepdims, initial, where])Возвращает минимальное значение вдоль заданной оси. newbyteorder([new_order])Возвращает массив с теми же данными, но с другим порядком байтов. nonzero()Возвращает индексы элементов, отличных от нуля. partition(kth[, axis, kind, order])Переупорядочивает элементы в массиве таким образом, что значение элемента в позиции kth находится в позиции, которая соответствует его положению в отсортированном массиве. prod([axis, dtype, out, keepdims, initial, …])Возвращает произведение элементов массива по заданной оси. ptp([axis, out, keepdims])Значение от пика до пика (максимум - минимум) вдоль заданной оси. put(indices, values[, mode])Устанавливает a.flat[n] = values[n]для всехnв индексах.ravel([order])Возвращает уплощённый массив. repeat(repeats[, axis])Повторяет элементы массива. reshape(shape[, order])Возвращает массив с теми же данными, но с новой формой. resize(new_shape[, refcheck])Изменяет форму и размер массива на месте. round([decimals, out])Возвращает aс каждым элементом, округленным до заданного количества десятичных знаков.searchsorted(v[, side, sorter])Находит индексы, где элементы v должны быть вставлены в массив a, чтобы сохранить порядок. setfield(val, dtype[, offset])Размещает значение в заданное место в поле, определённом типом данных. setflags([write, align, uic])Устанавливает флаги массива WRITEABLE, ALIGNED, (WRITEBACKIFCOPY и UPDATEIFCOPY) соответственно. sort([axis, kind, order])Сортирует массив на месте. squeeze([axis])Удаляет одноразмерные записи из формы a.std([axis, dtype, out, ddof, keepdims])Возвращает стандартное отклонение элементов массива вдоль заданной оси. sum([axis, dtype, out, keepdims, initial, where])Возвращает сумму элементов массива по заданной оси. swapaxes(axis1, axis2)Возвращает представление массива с осями axis1иaxis2, поменянными местами.
take(indices[, axis, out, mode])Возвращает массив, образованный из элементов aпо заданным индексам.tobytes([order])Создаёт строку Python, содержащую сырые байты данных массива. tofile(fid[, sep, format])Записывает массив в файл в виде текста или двоичных данных (по умолчанию). tolist()Возвращает массив в виде вложенного списка Python с глубиной вложенности a.ndim.tostring([order])Создаёт строку Python, содержащую сырые байты данных массива. trace([offset, axis1, axis2, dtype, out])Возвращает сумму по диагоналям массива. transpose(*axes)Возвращает представление массива с переставленными осями. var([axis, dtype, out, ddof, keepdims])Возвращает дисперсию элементов массива по заданной оси. view([dtype, type])Новое представление массива с теми же данными. поле
© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.17.0/reference/generated/numpy.recarray.html