fast_array_utils
¶
Fast array utilities with minimal dependencies.
fast_array_utils.conv
This submodule is always available and contains conversion utilities.
fast_array_utils.stats
This submodule requires numba to be installed and contains statistics utilities.
fast_array_utils.typing
andfast_array_utils.types
These submodules contain types for annotations and checks, respectively. Stubs for these types are available even if the respective packages are not installed.
See also the test utilities in testing.fast_array_utils
.
usage¶
fast-array-utils
supports the following array types:
numpy.ndarray
scipy.sparse.cs{rc}_{array,matrix}
cupy.ndarray
andcupyx.scipy.sparse.cs{rc}_matrix
dask.array.Array
h5py.Dataset
andzarr.Array
anndata.abc.CS{CR}Dataset
(only supported by.conv.to_dense
at the moment)
Use fast_array_utils.conv.to_dense
to densify arrays and optionally move them to CPU memory:
from fast_array_utils.conv import to_dense
numpy_arr = to_dense(sparse_arr_or_mat)
numpy_arr = to_dense(dask_or_cuda_arr, to_cpu_memory=True)
dense_dask_arr = to_dense(dask_arr)
dense_cupy_arr = to_dense(sparse_cupy_mat)
Use fast_array_utils.conv.*
to calculate statistics across one or both axes of a 2D array.
All of them support an axis and dtype parameter:
from fast_array_utils import stats
all_equal = stats.is_constant(arr_2d)
col_sums = stats.sum(arr_2d, axis=0)
mean = stats.mean(arr_2d)
row_means, row_vars = stats.mean_var(arr_2d, axis=1)
installation¶
To use fast_array_utils.stats
or fast_array_utils.conv
:
(uv) pip install 'fast-array-utils[accel]'
To use testing.fast_array_utils
:
(uv) pip install 'fast-array-utils[testing]'