getRobustPseudoWeights: Calculate the canonical correlation weights based on sparse...

Description Usage Arguments Details Value Examples

Description

Integrate two omics data type (and a quantitative phenotype), and calculate the absolute canonical correlation weights for the omics features using SmCCA SsCCA, or SCCA. SmCCA and SsCCA take into account a phenotype/trait. SmCCA maximizes the total (weighted or unweighted) pairwise canonical correlation weights between two omics data types and the trait. It requires the trait to be quantitative. SsCCA prioritizes omics features based on the trait, and assigns non-zero canonical weights to features that are more correlated to the trait. SCCA does not use any trait information for computing the canonical correlation weights. All of these three methods are included in this function, along with an omics feature subsampling scheme.

Usage

1
2
3
getRobustPseudoWeights(X1, X2, Trait, Lambda1, Lambda2, s1 = 0.7, s2 = 0.7,
  NoTrait = FALSE, FilterByTrait = FALSE, SubsamplingNum = 1000,
  CCcoef = NULL, trace = FALSE)

Arguments

X1

An n\times p_1 data matrix (e.g. mRNA) with p_1 features and n subjects.

X2

An n\times p_2 data matrix (e.g. miRNA) with p_2 features and n subjects.

Trait

An n\times 1 trait data matrix for the same n subjects.

Lambda1

LASSO penalty parameter for X1. Lambda1 needs to be between 0 and 1.

Lambda2

LASSO penalty parameter for X2. Lambda2 needs to be between 0 and 1.

s1

Proportion of mRNA features to be included, default at s1 = 0.7. s1 needs to be between 0 and 1.

s2

Proportion of miRNA features to be included, default at s1 = 0.7. s2 needs to be between 0 and 1.

NoTrait

Logical, default is FALSE. Whether trait information is provided.

FilterByTrait

Logical, default is FALSE. Whether only the top (80\%) features with highest correlation to the trait will be assigned nonzero weights. The choice of 80\% is based on the PMA package.

SubsamplingNum

Number of feature subsamples. Default is 1000. Larger number leads to more accurate results, but at a higher cost.

CCcoef

Optional coefficients for the SmCCA pairwise canonical correlations. If CCcoef = NULL (default), then the objective function is the total sum of all pairwise canonical correlations. It can also be a coefficient vector that follows the column order of combn(K, 2).

trace

Logical. Whether to display the CCA algorithm trace.

Details

To choose SmCCA, set NoTrait = FALSE, FilterByTrait = FALSE. To choose SsCCA, set NoTrait = FALSE, FilterByTrait = TRUE. To choose SCCA, set Trait = NULL, NoTrait = TRUE.

Value

A canonical correlation weight matrix with p_1+p_2 rows. Each column is the canonical correlation weights based on subsampled X1 and X2 features. The number of columns is SubsamplingNum.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
## For illustration, we only subsample 5 times.
set.seed(123)

# Unweighted SmCCA
W1 <- getRobustPseudoWeights(geneExpr, mirnaExpr, Trait = pheno, Lambda1 = 0.05,
  Lambda2 = 0.05, s1 = 0.7, s2 = 0.9, NoTrait = FALSE, FilterByTrait = FALSE,
  SubsamplingNum = 5, CCcoef = NULL, trace = FALSE)
  
# Weighted SmCCA
W2 <- getRobustPseudoWeights(geneExpr, mirnaExpr, Trait = pheno, Lambda1 = 0.05,
  Lambda2 = 0.05, s1 = 0.7, s2 = 0.9, NoTrait = FALSE, FilterByTrait = FALSE,
  SubsamplingNum = 5, CCcoef = c(1, 5, 5), trace = FALSE)
  
# SsCCA
W3 <- getRobustPseudoWeights(geneExpr, mirnaExpr, Trait = pheno, Lambda1 = .05, Lambda2 = 0.5,
  s1 = 0.7, s2 = 0.9, NoTrait = FALSE, FilterByTrait = TRUE,
  SubsamplingNum = 5, CCcoef = NULL, trace = FALSE)

# SCCA
W4 <- getRobustPseudoWeights(geneExpr, mirnaExpr, Trait = NULL, Lambda1 = 0.05,
  Lambda2 = 0.05, s1 = 0.7, s2 = 0.9, NoTrait = TRUE, 
  SubsamplingNum = 5, CCcoef = NULL, trace = FALSE)
  

SmCCNet documentation built on May 1, 2019, 10:53 p.m.