pandas.SparseArray

class pandas.SparseArray(data, sparse_index=None, index=None, fill_value=None, kind='integer', dtype=None, copy=False)[source]

An ExtensionArray for storing sparse data.

Changed in version 0.24.0: Implements the ExtensionArray interface.

Parameters

data : array-like

A dense array of values to store in the SparseArray. This may contain fill_value.

sparse_index : SparseIndex, optional

index : Index

fill_value : scalar, optional

Elements in data that are fill_value are not stored in the SparseArray. For memory savings, this should be the most common value in data. By default, fill_value depends on the dtype of data:

data.dtype

na_value

float

np.nan

int

0

bool

False

datetime64

pd.NaT

timedelta64

pd.NaT

The fill value is potentially specified in three ways. In order of precedence, these are

  1. The fill_value argument

  2. dtype.fill_value if fill_value is None and dtype is a SparseDtype

  3. data.dtype.fill_value if fill_value is None and dtype is not a SparseDtype and data is a SparseArray.

kind : {‘integer’, ‘block’}, default ‘integer’

The type of storage for sparse locations.

  • ‘block’: Stores a block and block_length for each contiguous span of sparse values. This is best when sparse data tends to be clumped together, with large regions of fill-value values between sparse values.

  • ‘integer’: uses an integer to store the location of each sparse value.

dtype : np.dtype or SparseDtype, optional

The dtype to use for the SparseArray. For numpy dtypes, this determines the dtype of self.sp_values. For SparseDtype, this determines self.sp_values and self.fill_value.

copy : bool, default False

Whether to explicitly copy the incoming data array.

Attributes

None

Methods

None

Scroll To Top