HYDROID (HYDroxyl-Radical fOotprinting Interpretation for DNA) is a python package for the analysis of the experimental data generated by hydroxyl-radical footprinting (HRF) of DNA-protein complexes and its interpretation through comparison to theoretical predictions from molecular models.
The overall idea of the HRF approach is outlined in the figure below. Protein-DNA complexes are experimentally treated with hydroxyl-radicals causing DNA strands to break. Protein-DNA interactions affect DNA cleavage and protect DNA from the attacks by hydroxyl-radicals. The corresponding cleavage profiles (“footprints”) can be revealed by purifying DNA and visualizing it via gel electrophoresis. Alternatively an atomistic structural model of a protein DNA-complex may be analyzed and the expected clevage profiles can be estimated theoretically. Comparison between experimental and theoretical cleavage profiles can be used to validated/invalidated and refine the structural model and interpret HRF experimental data with high resolution.
For more information see Theoretical backgroud of HRF section.
This package provides two Python modules implementing complementary functionalities:
Every stage is implemented as a Python functions that can be launched from a Python script. Several function provide GUI interfaces for interactive data adjustment and analysis.
The overall workflow is oulined in the figure below.
assign_peaks_interactive
function is used to interactively map the position of the bands on the profile.call_peaks_interactive
function is used to interactively compare HRF profiles with DNA sequencing reaction profile to map the position of the peaks to the DNA sequence.fit_peaks
function is used to deconvolute HRF profiles into contributions of individual bands by using Gaussian or Lorentzian models for the intensity of every band on the gel.HYDROIDexp, Stage 5: plot_prof_on_seq
function is used to produce plots of cleavage frequency profile along DNA sequence.
get_DNA_H_SASA
function is used to calculate theoretical cleavage frequency profiles from PDB structures.plot_prof_on_seq
function is used to produce plots of theoretical cleavage frequency profile along DNA sequence.Finally, experimental and theoretical cleavage frequency profiles are compared to validate/invalidate/refine the model and/or interpret experimental data.
The esiest way to get familiar with HYDROID is to follow one of the well documented stage-by-stage examples and modify them as needed for the user data:
The example source code can be convinently downloaded by issing following commands in the terminal:
HYDROID_get_ex1 # download Example 1 to the current directory
HYDROID_get_ex2 # download Example 2 to the current directory
Video tutorial is available here.
DocString documentation for every function is provided inside the modules as well as stage-by-stage example Python files.
Detailed information about HYDROID algorithms can be found in the accompanying publication: A.K. Shaytan et al. (in preparation)
INSTALL.md provides common installation examples for Linux, MacOS and PC.
Please cite HYDROID using following publication:
Hydroxyl-radical footprinting is one of DNA footprinting methods.
For the initial familiarization with hydroxyl-radical footprinting techniques and theory following references and references therein are suggested: