Documentos de Académico
Documentos de Profesional
Documentos de Cultura
OBJECTS (DTYPE)
Introducción
Un objeto de tipo de datos (instancia de la clase numpy.dtype) se encarga de describir como se den
interpretar los bytes en el bloque de memoria de tamaño fijo correspondiente a un elemento de matriz.
Da la descripción de los aspectos de los datos:
■ Tipo de datos (entero, flotante, objeto Python…)
■ Tamaño de los datos (cuantos bytes hay)
■ Orden de bytes de los datos (Little-endian o big -endian)
■ Si el tipo de datos es estructurado a un agregado de otros tipos de datos
1. Cuales son los nombres de los campos de la estructura, mediante los cuales se puede acceder a ellos
2. Cual es el tipo de datos de cada campo
3. Que parte del bloque de memoria ocupa cada campo
■ Si el tipo de datos es una sub matriz (sub-array) ¿Cuál es su forma y tipo de datos?
Desarrollo
Para la descripción del tipo de datos escalares integrados en el numpy, un elemento extraído del arreglo
por ejemplo mediante una indexación será un objeto Python cuyo tipo es el escalar asociado con el tipo de
datos del arreglo.
Aunque los escalares no son objetos dtype, pueden usarse en lugar de uno siempre que se necesite una
especificación de tipo de datos.
Los tipos de datos estructurados se forman creando un tipo de datos cuyo campo contiene otros de datos.
Cada campo tiene un nombre por el cual se puede acceder. El principal debe tener el tamaño suficiente
para contener todos sus campos. Los tipos de datos estructurados también pueden contener tipos de datos
de subarreglos estructurados anidados en sus campos.
Finalmente, un tipo de datos puede describir elementos que son en sí mismos conjuntos de elementos de
otro tipo de datos. Sin embargo, estas matrices secundarias deben tener un tamaño fijo.
Si se crea un arreglo utilizando un tipo de datos que describe un subarreglo, las dimensiones de este se
agregan a la forma de la matriz cuando se crea.
Ejemplos
Example
str bytes_ (Python2)
unsignedinteger uint
or unicode_ (Python3)
character string unicode unicode_
buffer void
generic, flexible void
(all others) object_
Array-protocol type strings (see
The Array Interface)
Types with .dtype El primer carácter especifica el tipo de datos y los caracteres
restantes especifican
el número de bytes por elemento, excepto para Unicode, donde se
Cualquier tipo de objeto con un atributo dtype: interpreta como el número de caracteres
se accederá al atributo y se usará directamente.
El atributo debe devolver algo que sea '?' BOOLEAN
convertible en un objeto dtype 'B' (signed) byte
Attributes providing
additional information:
For data types that describe sub-arrays:
dtype.hasobject Boolean indicating whether this
dtype contains any reference-
counted objects in any fields or sub-
dtype.subdtype dtypes.
Tuple (item_dtype, shape) if this
dtype describes a sub-array, and
dtype.flags Bit-flags describing how this data type
None otherwise. is to be interpreted.
dtype.shape Shape tuple of the sub-array if this
dtype.isbuiltin Integer indicating how this dtype
data type describes a sub-array,
relates to the built-in dtypes.
and () otherwise.
dtype.isnative Boolean indicating whether the byte
order of this dtype is native to the
platform.
dtype.__setstate__()