# omicsNPC, applying the Non-Parametric Combination (NPC) on omics datasets

### Description

This function applies the NonParametric Combination methodology on the integrative analysis of different omics data modalities. It retrieves genes associated to a given outcome, taking into account all omics data. First, each datatype is analyzed independently using the appropriate method. omicsNPC analyses continuous data (microarray) using limma, while count data (e.g., RNAseq) are first preprocessed with using the "voom" function. The user can also specify their own function for computing deregulation / association The p-values from the single dataset analysis are then combined employing Fisher, Liptak and Tippett combining functions. The Tippett function returns findings which are supported by at least one omics modality. The Liptak function returns findings which are supportd by most modalities. The Fisher function has an intermediate behavior between those of Tippett and Liptak.

### Usage

1 2 3 4 5 | ```
omicsNPC(dataInput, dataMapping, dataTypes = rep('continuous', length(dataInput)),
combMethods = c("Fisher", "Liptak", "Tippett"), numPerms = 1000,
numCores = 1, verbose = FALSE, functionGeneratingIndex = NULL,
outcomeName, allCombinations = FALSE,
dataWeights = rep(1, length(dataInput))/length(dataInput), ...)
``` |

### Arguments

`dataInput` |
List of ExpressionSet objects, one for each data modality. |

`dataMapping` |
A data frame describing how to map measurements across datasets. See details for more information. |

`dataTypes` |
Character vector with possible values: 'continuous', 'count'. Alternatively, a list of functions for assessing deregulation / association with an outcome |

`combMethods` |
Character vector with possible values: 'Fisher', 'Liptak', 'Tippett'. If more than one is specified, all will be used. |

`numPerms` |
Number of permutations |

`numCores` |
Number of CPU cores to use |

`verbose` |
Logical, if set to TRUE omicsNPC prints out the step that it performs |

`functionGeneratingIndex` |
Function generating the indices for randomly permuting the samples |

`outcomeName` |
Name of the outcome of interest / experimental factor, as reported in the design matrices. If NULL, the last column of the design matrices is assumed to be the outcome of interest. |

`allCombinations` |
Logical, if TRUE all combinations of omics datasets are considered |

`dataWeights` |
A vector specifying the weigth to give to each dataset. Note that sum(dataWeights) should be 1. |

`...` |
Additional arguments to be passed to the user-defined functions |

### Value

A list containing: stats0 Partial deregulation / association statistics pvalues0 The partial p-values computed on each dataset pvaluesNPC The p-values computed through NPC.

### Author(s)

Nestoras Karathanasis, Vincenzo Lagani

### References

Pesarin, Fortunato, and Luigi Salmaso. Permutation tests for complex data: theory, applications and software. John Wiley & Sons, 2010. Nestoras Karathanasis, Ioannis Tsamardinos and Vincenzo Lagani. omicsNPC: applying the Non-Parametric Combination methodology to the integrative analysis of heterogeneous omics data. Submitted to PlosONE.

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | ```
# Load the data
data("TCGA_BRCA_Batch_93")
# Setting dataTypes, the first two ExpressionSets include RNAseq data,
# the third ExpressionSet includes Microarray data.
dataTypes <- c("count", "count", "continuous")
# Setting methods to combine pvalues
combMethods = c("Fisher", "Liptak", "Tippett")
# Setting number of permutations
numPerms = 1000
# Setting number of cores
numCores = 1
# Setting omicsNPC to print out the steps that it performs.
verbose = TRUE
# Run omicsNPC analysis.
# The output contains a data.frame of p-values, where each row corresponds to a gene,
# and each column corresponds to a method used in the analysis.
## Not run: out <- omicsNPC(dataInput = TCGA_BRCA_Data, dataTypes = dataTypes,
combMethods = combMethods, numPerms = numPerms,
numCores = numCores, verbose = verbose)
## End(Not run)
``` |