This function takes fragments and compute the distribution of their sizes over a set or multiple sets of GRanges.

getFragmentsDistribution(
  fragments,
  granges_list = NULL,
  extend_granges = c(-500, 500),
  limits = c(0, 600),
  roll = 3,
  cores = 1
)

Arguments

fragments

GRanges object containing paired-end fragments. See importPEBamFiles for more details on how to create such object.

granges_list

GRanges, can be a list of different sets of GRanges.

extend_granges

numeric vector of length 2, how the GRanges should be extended.

limits

numeric vector of length 2, only consider fragments within this window of sizes.

roll

Integer, apply a moving average of this size

cores

Integer, number of threads used to compute fragment size distribution

Value

A list of tbl, one for each .bam file.

Examples

data(bam_test)
data(ce11_proms)
df <- getFragmentsDistribution(
    bam_test, 
    ce11_proms,
    extend_granges = c(-500, 500)
)
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
#> Warning: NAs introduced by coercion
head(df)
#>     class x  y
#> 1 granges 1 NA
#> 2 granges 2  0
#> 3 granges 3  0
#> 4 granges 4  0
#> 5 granges 5  0
#> 6 granges 6  0
which.max(df$y)
#> [1] 147