This function builds various cij matrix for correlation network analysis

filter.dccm(x, cutoff.cij = NULL, cmap = NULL, xyz = NULL, fac = NULL, 
      cutoff.sims = NULL, collapse = TRUE, extra.filter = NULL, ...)

Arguments

x

A matrix (nXn), a numeric array with 3 dimensions (nXnXm), a list with m cells each containing nXn matrix, or a list with ‘all.dccm’ component, containing atomic correlation values, where "n" is the number of residues and "m" the number of calculations. The matrix elements should be in between -1 and 1. See ‘dccm’ function in bio3d package for further details.

cutoff.cij

Threshold for each individual correlation value. If NULL, a guessed value will be used. See below for details.

cmap

logical or numerical matrix indicating the contact map. If logical and TRUE, contact map will be calculated with input xyz.

xyz

XYZ coordinates, or a ‘pdbs’ object obtained from pdbaln or read.fasta.pdb, for contact map calculations.

fac

factor indicating distinct categories of input correlation matrices.

cutoff.sims

Threshold for the number of simulations with observed correlation value above cutoff.cij for the same residue/atomic pairs. See below for details.

collapse

logical, if TRUE the mean matrix will be returned.

extra.filter

Filter to apply in addition to the model chosen.

...

extra arguments passed to function cmap.

Value

Returns a matrix of class "dccm" or a 3D array of filtered cross-correlations.

References

Grant, B.J. et al. (2006) Bioinformatics 22, 2695--2696.

Author

Xin-Qiu Yao, Guido Scarabelli & Barry Grant

Details

If cmap is TRUE or provided a numerical matrix, the function inspects a set of cross-correlation matrices, or DCCM, and decides edges for correlation network analysis based on:

1. min(abs(cij)) >= cutoff.cij, or 2. max(abs(cij)) >= cutoff.cij && residues contact each other based on results from cmap.

Otherwise, the function filters DCCMs with cutoff.cij and return the mean of correlations present in at least cutoff.sims calculated matrices.

An internally guessed cuoff.cij is used if cutoff.cij=NULL is provided. By default, the cutoff is determined by keeping 5% of all residue pairs connected.

See also

Examples

if (FALSE) { # Example of transducin attach(transducin) gaps.pos <- gap.inspect(pdbs$xyz) modes <- nma.pdbs(pdbs, ncore=NULL) dccms <- dccm.enma(modes, ncore=NULL) cij <- filter.dccm(dccms, xyz=pdbs) # Example protein kinase # Select Protein Kinase PDB IDs ids <- c("4b7t_A", "2exm_A", "1opj_A", "4jaj_A", "1a9u_A", "1tki_A", "1csn_A", "1lp4_A") # Download and split by chain ID files <- get.pdb(ids, path = "raw_pdbs", split=TRUE) # Alignment of structures pdbs <- pdbaln(files) # Sequence identity summary(c(seqidentity(pdbs))) # NMA on all structures modes <- nma.pdbs(pdbs, ncore=NULL) # Calculate correlation matrices for each structure cij <- dccm(modes) # Set DCCM plot panel names for combined figure dimnames(cij$all.dccm) = list(NULL, NULL, ids) plot.dccm(cij$all.dccm) # Filter to display only correlations present in all structures cij.all <- filter.dccm(cij, cutoff.sims = 8, cutoff.cij = 0) plot.dccm(cij.all, main = "Consensus Residue Cross Correlation") detach(transducin) }