shaman_kk_norm

shaman_kk_norm(obs, exp, points, k = 100, k_exp = 100)

Arguments

obs

Dataframe containing the observed points

exp

Dataframe containing the expected (shuffled) points.

points

A score will be computed for each of the points.

k

The number of neighbor distances used for the score on observed data. For higher resolution maps, increase k. For lower resolution maps, decrease k.

k_exp

The number of neighbor distances used for the score on expected data. Should reflect the ratio between the total number of observed and expected over the entire chromosome.

Value

NULL if insufficient observed data, otherwise resturns a list containing 3 elements: 1) points - start1, start2 and score for all observed points. 2) obs - the observed points. 3) exp - the expected points.

Details

This function receives observed and expected data and compute the score on a given set of points. The score for a point is the KS D-statistic of the distances to the points k-nearest-neighbors

Examples


# Set misha db to test
gsetroot(shaman_get_test_track_db())
#> Error in setwd(groot): cannot change working directory
points <- gextract("hic_obs", gintervals.2d(2, 175.5e06, 177.5e06, 2, 175.5e06, 177.5e06), band = c(-2e06, -1024))
#> Error: Invalid interval (chr2, 1.755e+08, 1.775e+08): end coordinate exceeds chromosome boundaries
obs <- gextract("hic_obs", gintervals.2d(2, 175e06, 178e06, 2, 175e06, 178e06), band = c(-2e06, -1024))
#> Error: Invalid interval (chr2, 1.75e+08, 1.78e+08): end coordinate exceeds chromosome boundaries
exp <- gextract("hic_exp", gintervals.2d(2, 175e06, 178e06, 2, 175e06, 178e06), band = c(-2e06, -1024))
#> Error: Invalid interval (chr2, 1.75e+08, 1.78e+08): end coordinate exceeds chromosome boundaries
mat_score <- shaman_kk_norm(obs, exp, points, k = 100, k_exp = 200)
#> Error in nrow(obs): object 'obs' not found
shaman_gplot_map_score(mat_score$points)
#> Error in is.data.frame(x): object 'mat_score' not found