pandas_ts.ts_dtype

Module Contents

Classes

TsDtype

Data type to handle packed time series data

class TsDtype(pyarrow_dtype: pyarrow.DataType)[source]

Bases: pandas.ArrowDtype

Data type to handle packed time series data

property name: str[source]

The string representation of the ts type

pyarrow_dtype: pyarrow.StructType[source]
type[source]

The type of the array’s elements, always pd.DataFrame

classmethod from_fields(fields: collections.abc.Mapping[str, pyarrow.DataType]) Self[source]

Make TsDtype from a mapping of field names and list item types.

Parameters:

fields (Mapping[str, pa.DataType]) – A mapping of field names and their item types. Since all fields are lists, the item types are inner types of the lists, not the list types themselves.

Returns:

The constructed TsDtype.

Return type:

TsDtype

Examples

>>> dtype = TsDtype.from_fields({"a": pa.float64(), "b": pa.int64()})
>>> dtype
ts<a: [double], b: [int64]>
>>> assert (
...     dtype.pyarrow_dtype
...     == pa.struct({"a": pa.list_(pa.float64()), "b": pa.list_(pa.int64())})
... )
static _validate_dtype(pyarrow_dtype: pyarrow.DataType) pyarrow.StructType[source]
classmethod construct_from_string(string: str) Self[source]

Construct TsDtype from a string representation.

This works only for simple types, i.e. non-parametric pyarrow types.

Parameters:

string (str) – The string representation of the ts type. For example, ‘ts<x: [int64], y: [float64]’. It must be consistent with the string representation of the dtype given by the name attribute.

Returns:

The constructed TsDtype.

Return type:

TsDtype

Raises:

ValueError – If the string is not a valid ts type string or if the element types are parametric pyarrow types.

classmethod from_pandas_arrow_dtype(pandas_arrow_dtype: pandas.ArrowDtype)[source]

Construct TsDtype from a pandas.ArrowDtype.

Parameters:

pandas_arrow_dtype (ArrowDtype) – The pandas.ArrowDtype to construct TsDtype from.

Returns:

The constructed TsDtype.

Return type:

TsDtype

Raises:

ValueError – If the given dtype is not a valid ts type.

classmethod construct_array_type() type[pandas.core.arrays.ArrowExtensionArray][source]

Corresponded array type, always TsExtensionArray