pyarrow.OpaqueType#

class pyarrow.OpaqueType#

Bases: BaseExtensionType

Concrete class for opaque extension type.

Opaque is a placeholder for a type from an external (often non-Arrow) system that could not be interpreted.

Examples

Create an instance of opaque extension type:

>>> import pyarrow as pa
>>> pa.opaque(pa.int32(), "geometry", "postgis")
OpaqueType(extension<arrow.opaque[storage_type=int32, type_name=geometry, vendor_name=postgis]>)
__init__(*args, **kwargs)#

Methods

__init__(*args, **kwargs)

equals(self, other, *[, check_metadata])

Return true if type is equivalent to passed value.

field(self, i)

Parameters:

to_pandas_dtype(self)

Return the equivalent NumPy / Pandas dtype.

wrap_array(self, storage)

Wrap the given storage array as an extension array.

Attributes

bit_width

The bit width of the extension type.

byte_width

The byte width of the extension type.

extension_name

The extension type name.

has_variadic_buffers

If True, the number of expected buffers is only lower-bounded by num_buffers.

id

num_buffers

Number of data buffers required to construct Array type excluding children.

num_fields

The number of child fields.

storage_type

The underlying storage type.

type_name

The name of the type in the external system.

vendor_name

The name of the external system.

bit_width#

The bit width of the extension type.

byte_width#

The byte width of the extension type.

equals(self, other, *, check_metadata=False)#

Return true if type is equivalent to passed value.

Parameters:
otherDataType or str convertible to DataType
check_metadatabool

Whether nested Field metadata equality should be checked as well.

Returns:
is_equalbool

Examples

>>> import pyarrow as pa
>>> pa.int64().equals(pa.string())
False
>>> pa.int64().equals(pa.int64())
True
extension_name#

The extension type name.

field(self, i) Field#
Parameters:
iint
Returns:
pyarrow.Field
has_variadic_buffers#

If True, the number of expected buffers is only lower-bounded by num_buffers.

Examples

>>> import pyarrow as pa
>>> pa.int64().has_variadic_buffers
False
>>> pa.string_view().has_variadic_buffers
True
id#
num_buffers#

Number of data buffers required to construct Array type excluding children.

Examples

>>> import pyarrow as pa
>>> pa.int64().num_buffers
2
>>> pa.string().num_buffers
3
num_fields#

The number of child fields.

Examples

>>> import pyarrow as pa
>>> pa.int64()
DataType(int64)
>>> pa.int64().num_fields
0
>>> pa.list_(pa.string())
ListType(list<item: string>)
>>> pa.list_(pa.string()).num_fields
1
>>> struct = pa.struct({'x': pa.int32(), 'y': pa.string()})
>>> struct.num_fields
2
storage_type#

The underlying storage type.

to_pandas_dtype(self)#

Return the equivalent NumPy / Pandas dtype.

Examples

>>> import pyarrow as pa
>>> pa.int64().to_pandas_dtype()
<class 'numpy.int64'>
type_name#

The name of the type in the external system.

vendor_name#

The name of the external system.

wrap_array(self, storage)#

Wrap the given storage array as an extension array.

Parameters:
storageArray or ChunkedArray
Returns:
arrayArray or ChunkedArray

Extension array wrapping the storage array