hictoolsr: Hi-C analysis in R
hictoolsr
is an R package with a collection of useful tools for Hi-C data analysis. The tools fall into the following broad categories:
-
Extracting Hi-C Counts
Functions that are optimized to quickly extract and aggregate data from
.hic
files. -
Generating Paired Interactions
Methods to easily generate combinations of paired interactions.
-
Merging/Filtering/Binning Interactions
A collection of functions for converting to
GInteractions
objects and manipulating anchors. -
Plotting Functions
Additional visualization functions that are compatible with the
plotgardener
package.
Installation
This package can be installed via github:
if (!requireNamespace("remotes", quietly = TRUE))
install.packages("remotes")
remotes::install_github("EricSDavis/hictoolsr")
Workflows
We have provided a series of workflows that demonstrate how hictoolsr
can be integrated and used with existing packages to analyze genomic data.
Differential Loop Calling
This workflow demonstrates how to identify and visualize differential loops between two biological conditions using the hictoolsr
, DESeq2
, and plotgardener
packages.
Inter/Intrachromosomal Aggregate Analysis
(Coming soon) This workflow will demonstrate how to aggregate Hi-C signal from interactions between proteins bound on DNA.
Future updates
Improve function naming:
binBedpe()
argsa1Pos
anda2Pos
binBedpe()
tomapBedpeToBin()
,mapBedpeToBin()
,assignBedpeToBin()
,convertBedpeToBin()
?- More general names (i.e.
binAnchor()
->binGRanges()
)?
binBedpe()
- Improve documentation and examples
calcApa()
- Improve documentation and examples
calcBepde()
- Improve documentation and examples
- Change output from
data.table
toGInteractions
object. - Replace internal binning method with other binning functions
extractCounts()
-
Improve documentation and examples
-
Change name to
extractHicCounts()
-
Remove excess comments in function
-
Move binning warning to its own function
-
Utilize the chromosome extraction method from
calcApa()
- This might remove the chromosomes argument as well.
filterBedpe()
-
Improve documentation and examples
-
Currently does not filter out regions that are too close to the starts and ends of chromosomes. This is not a problem (it doesn't affect how straw imports the data), but it might be desirable to have those interactions filtered out.
- Specifically, remove
starts - res*buffer
andend + res*buffer
in filtering. - Will require
GRanges
to haveseqinfo
- Specifically, remove
-
Move binning warning to its own function
-
Currently removes mcols after filtering - make sure to add those back in.
mergeBedpe()
- Improve documentation and examples.
- Change input to handle R objects (data.tables/GInteraction objects).
- Replace internal binning method with other binning functions.
- Change output from
data.table
toGInteractions
object (or make this an argument).
plotApa()