numpy.core.records.array
-
core.records.array(obj, dtype=None, shape=None, offset=0, strides=None, formats=None, names=None, titles=None, aligned=False, byteorder=None, copy=True)[source] -
Построение массива записей из широкого диапазона объектов.
Всеобщий конструктор массива записей, который перенаправляет вызов на соответствующую функцию создания
recarrayв зависимости от входных данных (см. Примечания).- Параметры
-
- obj: любой
-
Входной объект. См. Примечания для подробностей о том, как обрабатываются различные типы входных данных.
- dtype: тип данных, необязательно
-
Допустимый тип данных для массива.
- shape: целое число или кортеж целых чисел, необязательно
-
Форма каждого массива.
- offset: целое число, необязательно
-
Позиция в файле или буфере для начала чтения.
- strides: кортеж целых чисел, необязательно
-
Буфер (
buf) интерпретируется согласно этим шагам (шаги определяют, сколько байтов занимает каждый элемент массива, строка, столбец и т.д. в памяти). - formats, names, titles, aligned, byteorder :
-
Если
dtypeявляетсяNone, эти аргументы передаются вnumpy.format_parserдля построения типа данных. См. подробную документацию этой функции. - copy: bool, необязательно
-
Скопировать ли входной объект (True), или использовать ссылку вместо него. Этот параметр применим только в том случае, если входной объект — ndarray или recarray. По умолчанию True.
- Возвращает
-
- np.recarray
-
Массив записей, созданный из указанного объекта.
Примечания
Если
objявляетсяNone, тогда вызывается конструкторrecarray. Еслиobjявляется строкой, тогда вызывается конструкторfromstring. Еслиobjявляется списком или кортежем, то если первый объект являетсяndarray, вызываетсяfromarrays, иначе вызываетсяfromrecords. Еслиobjявляетсяrecarray, то создается копия данных в recarray (еслиcopy=True) и используются новые форматы, имена и заголовки. Еслиobjявляется файлом, то вызываетсяfromfile. Наконец, если obj являетсяndarray, то возвращаетсяobj.view(recarray), создавая копию данных, еслиcopy=True.Примеры
>>> a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])>>> np.core.records.array(a) rec.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]], dtype=int32)>>> b = [(1, 1), (2, 4), (3, 9)] >>> c = np.core.records.array(b, formats = ['i2', 'f2'], names = ('x', 'y')) >>> c rec.array([(1, 1.0), (2, 4.0), (3, 9.0)], dtype=[('x', '<i2'), ('y', '<f2')])>>> c.x rec.array([1, 2, 3], dtype=int16)
>>> c.y rec.array([ 1.0, 4.0, 9.0], dtype=float16)
>>> r = np.rec.array(['abc','def'], names=['col1','col2']) >>> print(r.col1) abc
>>> r.col1 array('abc', dtype='<U3')>>> r.col2 array('def', dtype='<U3')
© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/generated/numpy.core.records.array.html