fetchGrinnCorrNetwork - Combine a grinn network queried from Grinn internal database to a weighted correlation network

Description

from the list of keywords and input omics data e.g. normalized expression data or metabolomics data, it is a one step function to:
1. Build an integrated network (grinn network) by connecting these keywords to a specified node type, see fetchGrinnNetwork. The keywords can be any of these node types: metabolite, protein, gene and pathway. The Grinn internal database contains the networks of the following types that can be quried: metabolite-protein, metabolite-protein-gene, metabolite-pathway, protein-gene, protein-pathway and gene-pathway.
2. Compute a weighted correlation network of input omics data, see datX and datY. Correlation coefficients, pvalues and relation directions are calculated using WGCNA functions cor and corPvalueStudent. The correlation coefficients are continuous values between -1 (negative correlation) and 1 (positive correlation), with numbers close to 1 or -1, meaning very closely correlated.
3. Combine the grinn network to the correlation network.

Usage

fetchGrinnCorrNetwork(txtInput, from, to, filterSource, returnAs, dbXref, datX, datY, corrCoef, pval, method)

Arguments

txtInputlist of keywords containing keyword ids e.g. txtInput = list('id1', 'id2'). The keyword ids are from the specified database, see dbXref. Default is grinn id e.g. G371.
fromstring of start node. It can be one of "metabolite","protein","gene","pathway".
tostring of end node. It can be one of "metabolite","protein","gene","pathway".
filterSourcestring or list of pathway databases. The argument is required, if from or to = "pathway", see from and to. The argument value can be any of "SMPDB","KEGG","REACTOME" or combination of them e.g. list("KEGG","REACTOME").
returnAsstring of output type. Specify the type of the returned network. It can be one of "tab","json","cytoscape", default is "tab". "cytoscape" is the format used in Cytoscape.js
dbXrefstring of database name. Specify the database name used for the txtInput ids, see txtInput. It can be one of "grinn","chebi","kegg","pubchem","inchi","hmdb","smpdb","reactome","uniprot","ensembl","entrezgene". Default is "grinn". If pubchem is used, it has to be pubchem SID (substance ID).
datXdata frame containing normalized, quantified omics data e.g. expression data, metabolite intensities. Columns correspond to entities e.g. genes, metabolites, and rows to samples e.g. normals, tumors. Require 'nodetype' at the first row to indicate the type of entities in each column. See below for details.
datYdata frame containing normalized, quantified omics data e.g. expression data, metabolite intensities. Use the same format as datNormX or it can be NULL. See below for details.
corrCoefnumerical value to define the minimum value of absolute correlation, from 0 to 1, to include edges in the output.
pvalnumerical value to define the maximum value of pvalues, to include edges in the output.
methodstring to define which correlation is to be used. It can be one of "pearson","kendall","spearman" (default), see cor.

Details

datX and datY are matrices in which rows are samples and columns are entities. If datY is given, then the correlations between the columns of datX and the columns of datY are computed. Otherwise if datY is not given, the correlations of the columns of datX are computed.

Value

list of nodes and edges. The list is with the following componens: edges and nodes. Return empty list if found nothing

Examples


# Create metabolite-gene network from the list of metabolites using grinn ids and combine the grinn network to a correlation network of metabolites
kw <- c('G160','G300','G371')
dummy <- rbind(nodetype=rep("metabolite"),t(mtcars))
colnames(dummy) <- c('G1.1','G27967','G371','G4.1',paste0('G',sample(400:22000, 28)))
result <- fetchGrinnCorrNetwork(txtInput=kw, from="metabolite", to="gene", datX=dummy, corrCoef=0.7, pval=1e-10, method="spearman")
# Create metabolite-pathway network from the list of metabolites using grinn ids and combine the grinn network to a correlation network of metabolites and proteins
dummyX <- rbind(nodetype=rep("metabolite"),t(mtcars)[,1:16])
colnames(dummyX) <- c('G1.1','G27967','G371','G4.1',paste0('G',sample(400:22000, 12)))
dummyY <- rbind(nodetype=rep("protein"),t(mtcars)[,17:32])
colnames(dummyY) <- c('P28845','P08235','Q08AG9','P80365',paste0('P',sample(10000:80000, 12)))
result <- fetchGrinnCorrNetwork(txtInput=kw, from="metabolite", to="pathway", datX=dummyX, datY=dummyY, corrCoef=0.7, pval=1e-4, method="spearman")
         

References

Correlation-based analyses apply methods from the following publications:

Go to HOME | Documentation | fetchGrinnNetwork | fetchCorrGrinnNetwork | fetchDiffCorrGrinnNetwork | fetchModuGrinnNetwork | fetchGrinnCorrNetwork | input formats