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', float), ('y', int)]) >>> x array([(1.0, 2), (3.0, 4)], dtype=[('x', '<f8'), ('y', '<i4')])>>> 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)]) rec.array([(-1073741821, 1.2249118382103472e-301, 24547520), (3471280, 1.2134086255804012e-316, 0)], dtype=[('x', '<i4'), ('y', '<f8'), ('z', '<i4')])Атрибуты: -
T -
То же, что и self.transpose(), за исключением того, что self возвращается, если self.ndim < 2.
-
base -
Базовый объект, если память взята из другого объекта.
-
ctypes -
Объект для упрощения взаимодействия массива с модулем ctypes.
-
data -
Объект Python буфера, указывающий на начало данных массива.
-
dtype -
Тип данных элементов массива.
-
flags -
Информация о структуре памяти массива.
-
flat -
Итератор по массиву размерности 1.
-
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)Сохраняет дамп массива в указанный файл в формате pickle. dumps()Возвращает дамп массива в формате pickle в виде строки. fill(value)Заполняет массив скалярным значением. flatten([order])Возвращает копию массива, сжатого в одно измерение. getfield(dtype[, offset])Возвращает поле данного массива как определённый тип. item(*args)Копирует элемент массива в стандартный скаляр Python и возвращает его. itemset(*args)Вставляет скаляр в массив (скаляр приводится к типу массива, если возможно). max([axis, out, keepdims])Возвращает максимальное значение вдоль заданной оси. mean([axis, dtype, out, keepdims])Возвращает среднее значение элементов массива вдоль заданной оси. min([axis, out, keepdims])Возвращает минимальное значение вдоль заданной оси. newbyteorder([new_order])Возвращает массив с теми же данными, но с другим порядком байтов. nonzero()Возвращает индексы элементов, отличных от нуля. partition(kth[, axis, kind, order])Переупорядочивает элементы в массиве таким образом, что значение элемента в позиции kth находится в позиции, в которой оно находилось бы в отсортированном массиве. prod([axis, dtype, out, keepdims])Возвращает произведение элементов массива по заданной оси. ptp([axis, out, keepdims])Разница между максимальным и минимальным значением (пик-пик) вдоль заданной оси. put(indices, values[, mode])Устанавливает a.flat[n] = values[n]для всехnв indices.ravel([order])Возвращает сглаженный массив. repeat(repeats[, axis])Повторяет элементы массива. reshape(shape[, order])Возвращает массив, содержащий те же данные с новой формой. resize(new_shape[, refcheck])Изменяет форму и размер массива на месте. round([decimals, out])Возвращает aс каждым элементом, округленным до заданного числа десятичных знаков.searchsorted(v[, side, sorter])Находит индексы, куда следует вставить элементы v, чтобы сохранить порядок. 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])Возвращает сумму элементов массива по заданной оси. swapaxes(axis1, axis2)Возвращает представление массива с осями axis1иaxis2поменявшими местами.
take(indices[, axis, out, mode])Возвращает массив, образованный из элементов aпо заданным индексам.tobytes([order])Создаёт Python-байты, содержащие сырые байты данных в массиве. tofile(fid[, sep, format])Записывает массив в файл в виде текста или двоичных данных (по умолчанию). tolist()Возвращает массив как (возможно, вложенный) список. 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.15.4/reference/generated/numpy.recarray.html