numpy.recarray#
- класс numpy.recarray(shape, dtype=None, buf=None, смещение=0, strides=None, форматы=None, names=None, заголовки=None, byteorder=None, aligned=False, порядок='C')[источник]#
Создать ndarray, который позволяет обращаться к полям через атрибуты.
Массивы могут иметь типы данных, содержащие поля, аналогичные столбцам в электронной таблице. Примером является
[(x, int), (y, float)], где каждая запись в массиве — это пара(int, float). Обычно эти атрибуты доступны с использованием поиска по словарю, такого какarr['x']иarr['y']. Записывающие массивы позволяют обращаться к полям как к членам массива, используяarr.xиarr.y.- Параметры:
- shapeкортеж
Форма выходного массива.
- dtypeтип данных, опционально
Желаемый тип данных. По умолчанию тип данных определяется из форматы, names, заголовки, aligned и byteorder.
- форматысписок типов данных, опционально
Список, содержащий типы данных для различных столбцов, например,
['i4', 'f8', 'i4']. форматы делает не поддерживать новое соглашение об использовании типов напрямую, т.е.(int, float, int). Обратите внимание, что форматы должен быть списком, а не кортежем. Учитывая, что форматы несколько ограничен, мы рекомендуем указыватьdtypeвместо этого.- namesкортеж из str, опционально
Имя каждого столбца, например.
('x', 'y', 'z').- bufбуфер, опционально
По умолчанию создается новый массив заданной формы и типа данных. Если buf указан и является объектом, предоставляющим интерфейс буфера, массив будет использовать память из существующего буфера. В этом случае, смещение и
stridesключевые слова доступны.
- Возвращает:
- recrecarray
Пустой массив заданной формы и типа.
- Другие параметры:
- заголовкикортеж из str, опционально
Псевдонимы для названий столбцов. Например, если names были
('x', 'y', 'z')и заголовки является('x_coordinate', 'y_coordinate', 'z_coordinate'), затемarr['x']эквивалентно какarr.xиarr.x_coordinate.- byteorder{‘<’, ‘>’, ‘=’}, опционально
Порядок байтов для всех полей.
- alignedbool, необязательно
Выровнять поля в памяти так, как это сделал бы C-компилятор.
- stridesкортеж целых чисел, необязательный
Буфер (buf) интерпретируется в соответствии с этими шагами (strides определяют, сколько байт занимает каждый элемент массива, строка, столбец и т.д. в памяти).
- смещениеint, необязательный
Начать чтение буфера (buf) с этого смещения и далее.
- порядок{'C', 'F'}, опционально
Порядок по строкам (C-стиль) или по столбцам (Fortran-стиль).
Смотрите также
numpy.rec.fromrecordsСоздайте записной массив из данных.
numpy.recordфундаментальный тип данных для
recarray.numpy.rec.format_parserопределить тип данных из форматов, имён, заголовков.
Примечания
Этот конструктор можно сравнить с
empty: он создаёт новый массив записей, но не заполняет его данными. Чтобы создать массив записей из данных, используйте один из следующих методов:Создать стандартный ndarray и преобразовать его в запись массива, используя
arr.view(np.recarray)Используйте buf ключевое слово.
Используйте np.rec.fromrecords.
Примеры
Создать массив с двумя полями,
xиy:>>> import numpy as np >>> x = np.array([(1.0, 2), (3.0, 4)], dtype=[('x', '
), ('y', ' )]) >>> x array([(1., 2), (3., 4)], dtype=[('x', ' >>> 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', '
- Атрибуты:
TВид транспонированного массива.
baseБазовый объект, если память взята из другого объекта.
ctypesОбъект для упрощения взаимодействия массива с модулем ctypes.
dataБуферный объект Python, указывающий на начало данных массива.
- device
dtypeТип данных элементов массива.
flagsИнформация о расположении памяти массива.
flatОдномерный итератор по массиву.
imagМнимая часть массива.
itemsizeДлина одного элемента массива в байтах.
mTПредставление транспонированного массива матрицы.
nbytesОбщее количество байтов, потребляемых элементами массива.
ndimКоличество измерений массива.
realДействительная часть массива.
shapeКортеж размерностей массива.
sizeКоличество элементов в массиве.
stridesКортеж байтов для шага в каждом измерении при обходе массива.
Методы
all([axis, out, keepdims, where])Возвращает True, если все элементы оцениваются как True.
any([axis, out, keepdims, where])Возвращает True, если любой из элементов a вычисляются как True.
argmax([axis, out, keepdims])Возвращает индексы максимальных значений вдоль заданной оси.
argmin([axis, out, keepdims])Возвращает индексы минимальных значений вдоль заданной оси.
argpartition(kth[, axis, kind, order])Возвращает индексы, которые бы разделили этот массив.
argsort([axis, kind, order, stable])Возвращает индексы, которые отсортировали бы этот массив.
astype(dtype[, order, casting, subok, copy])Копия массива, приведённая к указанному типу.
byteswap([inplace])Поменять байты элементов массива местами
choose(choices[, out, mode])Используйте массив индексов для создания нового массива из набора вариантов.
clip([min, max, out])Возвращает массив, значения которого ограничены
[min, max].compress(condition[, axis, out])Возвращает выбранные срезы этого массива вдоль заданной оси.
conj()Комплексно-сопряженные все элементы.
Вернуть комплексно-сопряженное значение поэлементно.
copy([order])Возвращает копию массива.
cumprod([axis, dtype, out])Возвращает кумулятивное произведение элементов вдоль заданной оси.
cumsum([axis, dtype, out])Возвращает кумулятивную сумму элементов вдоль заданной оси.
diagonal([offset, axis1, axis2])Возвращает указанные диагонали.
dot(other, /[, out])См.
numpy.dotдля полной документации.dump(файл)Сохранить pickle массива в указанный файл.
dumps()Возвращает pickle массива в виде строки.
fill(значение)Заполнить массив скалярным значением.
flatten([order])Возвращает копию массива, сведённую в одно измерение.
getfield(dtype[, offset])Возвращает поле заданного массива как определенный тип.
item(*args)Скопировать элемент массива в стандартный скаляр Python и вернуть его.
max([axis, out, keepdims, initial, where])Возвращает максимум вдоль заданной оси.
mean([axis, dtype, out, keepdims, where])Возвращает среднее значение элементов массива вдоль заданной оси.
min([axis, out, keepdims, initial, where])Возвращает минимум вдоль заданной оси.
nonzero()Возвращает индексы элементов, которые не равны нулю.
partition(kth[, axis, kind, order])Частично сортирует элементы в массиве таким образом, что значение элемента в k-й позиции находится в позиции, в которой оно было бы в отсортированном массиве.
prod([axis, dtype, out, keepdims, initial, ...])Возвращает произведение элементов массива по заданной оси
put(indices, values[, mode])Установить
a.flat[n] = values[n]для всехnв индексах.ravel([order])Возвращает сглаженный массив.
repeat(repeats[, axis])Повторить элементы массива.
reshape(a.reshape)Возвращает массив с теми же данными, но новой формой.
resize(a.resize)Изменение формы и размера массива на месте.
round([decimals, out])Возвращает a с каждым элементом, округлённым до заданного числа десятичных знаков.
searchsorted(v[, side, sorter])Найти индексы, где элементы v должен быть вставлен в a для сохранения порядка.
setfield(val, dtype[, offset])Поместить значение в указанное место в поле, определённом типом данных.
setflags([write, align, uic])Установить флаги массива WRITEABLE, ALIGNED, WRITEBACKIFCOPY соответственно.
sort([axis, kind, order, stable])Сортировать массив на месте.
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 по заданным индексам.
to_device(device, /, *[, stream])Для совместимости с Array API.
tobytes([order])Создать байты Python, содержащие необработанные байты данных в массиве.
tofile(fid, /[, sep, format])Запись массива в файл как текст или двоичный (по умолчанию).
tolist()Вернуть массив как
a.ndim-уровневый вложенный список скаляров Python.trace([offset, axis1, axis2, dtype, out])Возвращает сумму по диагоналям массива.
transpose(*axes)Возвращает представление массива с переставленными осями.
var([axis, dtype, out, ddof, keepdims, ...])Возвращает дисперсию элементов массива вдоль заданной оси.
view([dtype][, type])Новое представление массива с теми же данными.
field