R/normaliseByPermutation.R
normalise_by_permu.Rd
Normalise test perturbation scores by permutation results
normalise_by_permu(
permutedScore,
testScore,
pAdj_method = "fdr",
sortBy = c("gs_name", "sample", "pvalue")
)
A list. Output of generate_permuted_scores
A data.frame
. Output of `pathwayPertScore``
Method for adjusting p-values for multiple comparisons.
See ?p.adjust
for methods available. Default to FDR.
Sort the output by p-value, gene-set name or sample names.
A data.frame
Normalise the test perturbation scores generated by weight_ss_fc()
through the permuted perturbation scores derived from
the generate_permuted_scores()
function. The mean absolute deviation(MAD) and median of perturbation scores for each pathway are firstly
derived from the permuted perturbation scores. The test perturbation scores are then converted to robust z-scores using MADs and medians
calculated.
if (FALSE) {
load(system.file("extdata", "gsTopology.rda", package = "sSNAPPY"))
data(metadata_example)
data(logCPM_example)
metadata_example <- dplyr::mutate(metadata_example, treatment = factor(
treatment, levels = c("Vehicle", "E2+R5020", "R5020")))
ls <- weight_ss_fc(logCPM_example, metadata = metadata_example,
groupBy = "patient", sampleColumn = "sample", treatColumn = "treatment")
# compute raw gene-wise perturbation scores
genePertScore <- raw_gene_pert(ls$logFC, gsTopology)
# sum gene-wise perturbation scores to derive the pathway-level
# single-sample perturbation scores
pathwayPertScore <- pathway_pert(genePertScore)
# simulate the null distribution of scores through sample permutation
permutedScore <- generate_permuted_scores(logCPM_example, numOfTreat = 3,
NB = 5, gsTopology = gsTopology, weight = ls$weight)
# normlise the test perturbation scores using the permutation results
normalisedScores <- normalise_by_permu(permutedScore, pathwayPertScore,
sortBy = "pvalue")
}