pyarrow.field#

pyarrow.field(name, type=None, nullable=None, metadata=None)#

Create a pyarrow.Field instance.

Parameters:
namestr or bytes

Name of the field. Alternatively, you can also pass an object that implements the Arrow PyCapsule Protocol for schemas (has an __arrow_c_schema__ method).

typepyarrow.DataType or str

Arrow datatype of the field or a string matching one.

nullablebool, default True

Whether the field’s values are nullable.

metadatadict, default None

Optional field metadata, the keys and values must be coercible to bytes.

Returns:
fieldpyarrow.Field

Examples

Create an instance of pyarrow.Field:

>>> import pyarrow as pa
>>> pa.field('key', pa.int32())
pyarrow.Field<key: int32>
>>> pa.field('key', pa.int32(), nullable=False)
pyarrow.Field<key: int32 not null>
>>> field = pa.field('key', pa.int32(),
...                  metadata={"key": "Something important"})
>>> field
pyarrow.Field<key: int32>
>>> field.metadata
{b'key': b'Something important'}

Use the field to create a struct type:

>>> pa.struct([field])
StructType(struct<key: int32>)

A str can also be passed for the type parameter:

>>> pa.field('key', 'int32')
pyarrow.Field<key: int32>