array_sparsity#

pybear.utilities.array_sparsity(a)#

Calculate the sparsity (percentage of zeros) of an array-like.

Returns a float between 0 and 100.

Accepts Python lists and tuples but not sets, numpy ndarrays, pandas series and dataframes, polars series and dataframes, and all scipy sparse matrices / arrays except bsr.

Parameters:
aarray_like of shape (n_samples, n_features) or (n_samples,)

Object for which to calculate sparsity. Cannot be empty.

Returns:
sparsityfloat

Percentage of zeros in a.

Notes

Type Aliases

PythonTypes

list | tuple | list[list] | tuple[tuple]]

NumpyTypes

numpy.ndarray

PandasTypes

pandas.Series | pandas.DataFrame

PolarsTypes

polars.Series | polars.DataFrame

ScipySparseTypes

ss.csc_matrix | ss.csc_array | ss.csr_matrix | ss.csr_array | ss.coo_matrix | ss.coo_array | ss.dia_matrix | ss.dia_array | ss.lil_matrix | ss.lil_array | ss.dok_matrix | ss.dok_array

Container:

PythonTypes | NumpyTypes | PandasTypes | PolarsTypes | ScipySparseTypes

Examples

>>> import numpy as np
>>> from pybear.utilities import array_sparsity
>>> a = np.array([[0,1,0,2,0],[1,0,0,0,3]])
>>> array_sparsity(a)
60.0