Skip to contents

test_PPI search protein-protein interaction on significant candidate based on a local STRING database.

Usage

test_PPI(
  x,
  contrasts = NULL,
  species = "Human",
  STRING.version = "11.5",
  choose_scores = NULL,
  score_cutoff = 400
)

Arguments

x

A SummarizedExperiment/DEGdata output from add_rejections or a charachter vector containing candidate identifiers(SYMBOL, EntrezID, UniprotID or ENSEMBL).

contrasts

Character, specifies the contrasts to get significant candidates.

species

The species name.

STRING.version

Character(1),the version of STRING data.

choose_scores

NULL or "combined_score" or a subset of c("neighborhood","fusion","cooccurence","coexpression", "experimental","database","textmining"). If is NULL or "combined_score", cutoff is on the scores combining above all evidence, otherwise is on the subset.

score_cutoff

A numeric lager than 400, required lowest interaction scores. A score lowwer than 400 means the interaction is unconfident

Value

A data.frame of PPI information

Details

Identifiers in x are firstly transformed to entrezID and then mapped the relative STRING id. Next the protein-protein interaction is exctracted from STRING.link.detail. The local STRING data (including protein.info, protein.aliases and protein.links.detailed) is necessary for this function. If it is absent, test_PPI will download from STRING automatically according species and STRING.version.

Examples

if (FALSE) {
# Load example
data(Silicosis_pg)
data <- Silicosis_pg
data_unique <- make_unique(data, "Gene.names", "Protein.IDs", delim = ";")

# Differential test
ecols <- grep("LFQ.", colnames(data_unique))
se <- make_se_parse(data_unique, ecols,mode = "delim")
filt <- filter_se(se, thr = 0, fraction = 0.4, filter_formula = ~ Reverse != "+" & Potential.contaminant!="+")
norm <- normalize_vsn(filt)
imputed <- impute(norm, fun = "MinProb", q = 0.05)
diff <- test_diff(imputed, type = "control", control  = c("PBS"), fdr.type = "Storey's qvalue")
dep <- add_rejections(diff, alpha = 0.01,lfc = 2)

# PPI construct
if(check_PPI_depends()){

  # Load STRING data. If local STRING is missing, PPI_res will download to system.file("PPIdata", "Mouse",package = "DEP2")
  load_PPIdata(speciesname = "Mouse")

  PPI_res <- test_PPI(dep, contrasts = "W4_vs_PBS", species = "Mouse",
                      STRING.version = "11.5",score_cutoff = 400)
  head(PPI_res)
}
}