smftools.tools.read_stats#
Functions
|
Fast autocorrelation over real genomic spacing. |
|
Add per-read entropy values to |
Fill NaNs with random values in-place. |
- smftools.tools.read_stats.random_fill_nans(X)#
Fill NaNs with random values in-place.
- Parameters:
X (
ndarray) -- Input array with NaNs.- Returns:
Array with NaNs replaced by random values.
- Return type:
- smftools.tools.read_stats.calculate_row_entropy(adata, layer, output_key='entropy', site_config=None, ref_col='Reference_strand', encoding='signed', max_threads=None)#
Add per-read entropy values to
adata.obs.- Parameters:
adata (
AnnData) -- Annotated data matrix.layer (
str) -- Layer name to use for entropy calculation.output_key (
str(default:'entropy')) -- Base name for the entropy column inadata.obs.site_config (
dict[str,Sequence[str]] |None(default:None)) -- Mapping of reference to site types for masking.ref_col (
str(default:'Reference_strand')) -- Obs column containing reference strands.encoding (
str(default:'signed')) --"signed"(1/-1/0) or"binary"(1/0/NaN).max_threads (
int|None(default:None)) -- Number of threads for parallel processing.
- Return type:
- smftools.tools.read_stats.binary_autocorrelation_with_spacing(row, positions, max_lag=1000, assume_sorted=True)#
Fast autocorrelation over real genomic spacing. Uses a sliding window + bincount to aggregate per-lag products.
Parameters#
- row1D array (float)
Values per position (NaN = missing). Works for binary or real-valued.
- positions1D array (int)
Genomic coordinates for each column of row.
- max_lagint
Max genomic lag (inclusive).
- assume_sortedbool
If True, assumes positions are strictly non-decreasing.
Returns#
- autocorr1D array, shape (max_lag+1,)
Normalized autocorrelation; autocorr[0] = 1.0. Lags with no valid pairs are NaN.