Spec-Zone.ru › NumPy 1.14

numpy.recarray

class numpy.recarray [source]

Создаёт ndarray, позволяющий получать доступ к полям через атрибуты.

Массивы могут иметь типы данных, содержащие поля, аналогичные столбцам в таблице. Примером является [(x, int), (y, float)], где каждая запись в массиве представляет пару (int, float). Обычно эти атрибуты доступны через обращение по ключу в словаре, например, arr['x'] и arr['y']. Массивы типа record позволяют обращаться к полям как к членам массива, используя arr.x и arr.y.

Параметры:

shape : кортеж

Форма выходного массива.

dtype : тип данных, необязательно

Желаемый тип данных. По умолчанию тип данных определяется из formats, names, titles, aligned и byteorder.

formats : список типов данных, необязательно

Список, содержащий типы данных для разных столбцов, например, ['i4', 'f8', 'i4']. formats не поддерживает новую конвенцию использования типов напрямую, т.е. (int, float, int). Обратите внимание, что formats должен быть списком, а не кортежем. Учитывая, что formats несколько ограничен, мы рекомендуем указать dtype вместо этого.

names : кортеж строк, необязательно

Имя каждого столбца, например, ('x', 'y', 'z').

buf : буфер, необязательно

По умолчанию создаётся новый массив заданной формы и типа данных. Если buf указан и является объектом, предоставляющим интерфейс буфера, массив будет использовать память из существующего буфера. В этом случае доступны ключевые слова offset и strides.

Возвращает:

rec : recarray

Пустой массив заданной формы и типа.

Другие параметры:

titles : кортеж строк, необязательно

Псевдонимы для имён столбцов. Например, если names было ('x', 'y', 'z') и titles равно ('x_coordinate', 'y_coordinate', 'z_coordinate'), то arr['x'] эквивалентно как arr.x, так и arr.x_coordinate.

byteorder : {‘<’, ‘>’, ‘=’}, необязательно

Порядок байтов для всех полей.

aligned : bool, необязательно

Выровнять поля в памяти так, как это делает компилятор C.

strides : кортеж целых чисел, необязательно

Буфер (buf) интерпретируется по этим шагам (шаги определяют, сколько байтов занимает каждый элемент массива, строка, столбец и т. д. в памяти).

offset : целое число, необязательно

Начать чтение буфера (buf) с этого смещения.

order : {‘C’, ‘F’}, необязательно

Порядок строк (стиль C) или столбцов (стиль Fortran).

См. также

rec.fromrecords
Создать массив записей из данных.
record
базовый тип данных для recarray.
format_parser
определяет тип данных по форматам, именам, названиям.

Примечания

Этот конструктор можно сравнить с empty: он создаёт новый массив записей, но не заполняет его данными. Чтобы создать массив записей из данных, используйте один из следующих методов:

  1. Создайте стандартный ndarray и преобразуйте его в массив записей, используя arr.view(np.recarray)
  2. Используйте ключевое слово buf.
  3. Используйте 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-D по массиву.
imag Мнимая часть массива.
itemsize Длина одного элемента массива в байтах.
nbytes Общее количество байтов, занимаемых элементами массива.
ndim Число измерений массива.
real Действительная часть массива.
shape Кортеж измерений массива.
size Количество элементов в массиве.
strides Кортеж байтов для перехода в каждом измерении при прохождении по массиву.

Методы

END_OF_DOCUMENT_MARKER
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() Возвращает пикл массива в виде строки.
field(attr[, val])
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]) Разность максимального и минимального значения (пик-пик) по заданной оси.
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.14.5/reference/generated/numpy.recarray.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API