Last data update: 2014.03.03

R: Function to use PRS method on microarray or RNA-Seq data
PRSR Documentation

Function to use PRS method on microarray or RNA-Seq data

Description

A function runs PRS method on a gene expression data matrix or count matrix and vector dividing samples into two groups and a set of pathways from graphite package. The PRS method (please see Reference for the details) was adapted to graphite's graphs where each node is represented only by one gene.

Usage

PRS(x, group, pathways, type, preparePaths=TRUE, norm.method=NULL, test.method=NULL, p.th=0.05, logFC.th=2, nperm=1000,
 both.directions=TRUE, maxNodes=150, minEdges=0, commonTh=2, filterSPIA=FALSE, convertTo="none", convertBy=NULL)

Arguments

x

An ExpressionSet object or a gene expression data matrix or count matrix, rows refer to genes, columns to samples

group

Name or number of the phenoData column or a character vector or factor that contains required class assigments

pathways

A list of pathways in a form from graphite package or created by preparePathways()

type

Type of the data, "MA" for microarray, "RNASeq" for RNA-Seq, DEtable data.frame from differential expression analysis, or DEGlist a list of: log fold-changes of differentially expressed genes and names of the all genes analyses

preparePaths

Logical, by default the pathways are transformed with preparePathways(). Use FALSE, if you have done this transformation separately

norm.method

Character, the method to normalize RNAseq data. If NULL then TMM-normalization is performed. Possible values are: "TMM", "DESeq2", "rLog", "none". Ignored for type: "MA","DEtable", "DElist"

test.method

Character, the method for differentiall expression analysis of RNAseq data. If NULL then "voomlimma" is used. Possible values are: "DESeq2", "voomlimma", "vstlimma", "edgeR". Ignored for type: "MA","DEtable", "DElist"

p.th

Numeric, threshold for p-values of tests for differential expression of genes. Use 1 if you don't want any threshold to be applied

logFC.th

Numeric, threshold for log fold-change of a gene to identify the gene as differentially expressed. Use negative if you don't want any threshold to be applied

nperm

Numeric, number of permutations

both.directions, maxNodes, minEdges, commonTh, filterSPIA, convertTo, convertBy

Arguments for the preparePathways()

Value

A list,

res

A data frame with normalized score, p-value and FDR-adjusted p-value for each pathway

topo.sig

A list with log fold-changes and number of downstream differentially expressed nodes for nodes of individual pathways

degtest

A named vector of statistics from testing the differential expression of genes

Author(s)

Ivana Ihnatova

References

Maysson Al-Haj Ibrahim, Sabah Jassim, Michael Anthony Cawthorne, and Kenneth Langlands. A Topology-Based Score for Pathway Enrichment, Journal of Computational Biology. May 2012, 19(5): 563-573

See Also

preparePathways

Examples


if (require(DEGraph)) {
  data("Loi2008_DEGraphVignette")
  pathways<-pathways("hsapiens","biocarta")[1:10]
  PRS( exprLoi2008, classLoi2008, pathways, type="MA",  logFC.th=-1, nperm=100)
}
## Not run: 
if (require(gageData)) {

 data(hnrnp.cnts)
 hnrnp.cnts<-hnrnp.cnts[rowSums(hnrnp.cnts)>0,]
 group<-c(rep("sample",4), rep("control",4))
 pathways<-pathways("hsapiens","biocarta")[1:10]
 PRS(hnrnp.cnts, group, pathways, type="RNASeq", logFC.th=-1, nperm=100, test="vstlimma")
}

## End(Not run)

Results


R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library(ToPASeq)
Loading required package: graphite
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, cbind, colnames, do.call, duplicated, eval, evalq,
    get, grep, grepl, intersect, is.unsorted, lapply, lengths, mapply,
    match, mget, order, paste, pmax, pmax.int, pmin, pmin.int, rank,
    rbind, rownames, sapply, setdiff, sort, table, tapply, union,
    unique, unsplit

Loading required package: gRbase
Loading required package: graph
Loading required package: locfit
locfit 1.5-9.1 	 2013-03-22
Loading required package: Rgraphviz
Loading required package: grid
> png(filename="/home/ddbj/snapshot/RGM3/R_BC/result/ToPASeq/PRS.Rd_%03d_medium.png", width=480, height=480)
> ### Name: PRS
> ### Title: Function to use PRS method on microarray or RNA-Seq data
> ### Aliases: PRS
> ### Keywords: htest
> 
> ### ** Examples
> 
> 
> if (require(DEGraph)) {
+   data("Loi2008_DEGraphVignette")
+   pathways<-pathways("hsapiens","biocarta")[1:10]
+   PRS( exprLoi2008, classLoi2008, pathways, type="MA",  logFC.th=-1, nperm=100)
+ }
Loading required package: DEGraph
Warning message:
In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package called 'DEGraph'
> ## Not run: 
> ##D if (require(gageData)) {
> ##D 
> ##D  data(hnrnp.cnts)
> ##D  hnrnp.cnts<-hnrnp.cnts[rowSums(hnrnp.cnts)>0,]
> ##D  group<-c(rep("sample",4), rep("control",4))
> ##D  pathways<-pathways("hsapiens","biocarta")[1:10]
> ##D  PRS(hnrnp.cnts, group, pathways, type="RNASeq", logFC.th=-1, nperm=100, test="vstlimma")
> ##D }
> ## End(Not run)
> 
> 
> 
> 
> 
> dev.off()
null device 
          1 
>