iced.normalization.ICE_normalization

iced.normalization.ICE_normalization(X, SS=None, max_iter=3000, eps=0.0001, copy=True, norm='l1', verbose=0, output_bias=False, total_counts=None, counts_profile=None)

ICE normalization

The imakaev normalization of Hi-C data consists of iteratively estimating the bias such that all the rows and columns (ie loci) have equal visibility.

Parameters:

X : ndarray or sparse array (n, n)

raw interaction frequency matrix

max_iter : integer, optional, default: 3000

Maximum number of iteration

eps : float, optional, default: 1e-4

the relative increment in the results before declaring convergence.

copy : boolean, optional, default: True

If copy is True, the original data is not modified.

norm : string, optional, default: l1

If set to “l1”, will compute the ICE algorithm of the paper. Else, the algorithm is adapted to use the l2 norm, as suggested in the SCN paper.

output_bias : boolean, optional, default: False

whether to output the bias vector.

total_counts : float, optional, default: None

the total number of contact counts that the normalized matrix should contain. If set to None, the normalized contact count matrix will be such that the total number of contact counts equals the initial number of interactions.

Returns:

X, (bias) : ndarray (n, n)

Normalized IF matrix and bias of output_bias is True