| pepMDS | R Documentation |
pepMDS visualizes the multidimensional scaling (MDS) of peptide log2FC.
prnMDS visualizes the multidimensional scaling (MDS) of protein
log2FC.
pepMDS(
col_select = NULL,
col_group = NULL,
col_color = NULL,
col_fill = NULL,
col_shape = NULL,
col_size = NULL,
col_alpha = NULL,
color_brewer = NULL,
fill_brewer = NULL,
size_manual = NULL,
shape_manual = NULL,
alpha_manual = NULL,
choice = c("cmdscale", "isoMDS"),
scale_log2r = TRUE,
complete_cases = FALSE,
impute_na = FALSE,
dist_co = log2(1),
adjEucDist = FALSE,
method = "euclidean",
p = 2,
k = 3,
dimension = 2,
folds = 1,
center_features = TRUE,
scale_features = TRUE,
show_ids = TRUE,
show_ellipses = FALSE,
df = NULL,
filepath = NULL,
filename = NULL,
theme = NULL,
...
)
prnMDS(
col_select = NULL,
col_group = NULL,
col_color = NULL,
col_fill = NULL,
col_shape = NULL,
col_size = NULL,
col_alpha = NULL,
color_brewer = NULL,
fill_brewer = NULL,
size_manual = NULL,
shape_manual = NULL,
alpha_manual = NULL,
choice = c("cmdscale", "isoMDS"),
scale_log2r = TRUE,
complete_cases = FALSE,
impute_na = FALSE,
dist_co = log2(1),
adjEucDist = FALSE,
method = "euclidean",
p = 2,
k = 3,
dimension = 2,
folds = 1,
center_features = TRUE,
scale_features = TRUE,
show_ids = TRUE,
show_ellipses = FALSE,
df = NULL,
filepath = NULL,
filename = NULL,
theme = NULL,
...
)
col_select |
Character string to a column key in |
col_group |
Character string to a column key in |
col_color |
Character string to a column key in |
col_fill |
Character string to a column key in |
col_shape |
Character string to a column key in |
col_size |
Character string to a column key in |
col_alpha |
Character string to a column key in |
color_brewer |
Character string to the name of a color brewer for use in
ggplot2::scale_color_brewer,
i.e., |
fill_brewer |
Character string to the name of a color brewer for use in
ggplot2::scale_fill_brewer,
i.e., |
size_manual |
Numeric vector to the scale of sizes for use in
ggplot2::scale_size_manual,
i.e., |
shape_manual |
Numeric vector to the scale of shape IDs for use in
ggplot2::scale_shape_manual,
i.e., |
alpha_manual |
Numeric vector to the scale of transparency of objects for
use in
ggplot2::scale_alpha_manual
, i.e., |
choice |
Character string; the MDS method in |
scale_log2r |
Logical; if TRUE, adjusts |
complete_cases |
Logical; if TRUE, only cases that are complete with no missing values will be used. The default is FALSE. |
impute_na |
Logical; if TRUE, data with the imputation of missing values will be used. The default is FALSE. |
dist_co |
Numeric; The cut-off in the absolute distance measured by
|
adjEucDist |
Logical; if TRUE, adjusts the inter-plex |
method |
Character string; the distance measure in one of c("euclidean",
"maximum", "manhattan", "canberra", "binary") for |
p |
Numeric; The power of the Minkowski distance in
|
k |
Numeric; The desired dimension for the solution passed to
|
dimension |
Numeric; The desired dimension for pairwise visualization. The default is 2. |
folds |
Not currently used. Integer; the degree of folding data into subsets. The default is one without data folding. |
center_features |
Logical; if TRUE, adjusts log2FC to center zero by
features (proteins or peptides). The default is TRUE. Note the difference to
data alignment with |
scale_features |
Logical; if TRUE, adjusts log2FC to the same scale of
variance by features (protein or peptide entries). The default is TRUE. Note
the difference to data scaling with |
show_ids |
Logical; if TRUE, shows the sample IDs in |
show_ellipses |
Logical; if TRUE, shows the ellipses by sample groups
according to |
df |
The name of a primary data file. By default, it will be determined
automatically after matching the types of data and analysis with an
|
filepath |
A file path to output results. By default, it will be
determined automatically by the name of the calling function and the value
of |
filename |
A representative file name to outputs. By default, the
name(s) will be determined automatically. For text files, a typical file
extension is |
theme |
A ggplot2 theme, i.e., theme_bw(), or a custom theme. At the NULL default, a system theme will be applied. |
... |
|
An Euclidean distance matrix of log2FC is returned by
dist, followed by a metric
(cmdscale) or non-metric (isoMDS)
MDS. The default is metric MDS with the input dissimilarities being euclidean
distances. Note that the center_features alone will not affect the
results of dist; it together with scale_features
will be passed to scale.
MDS plots.
Metadata
load_expts for metadata preparation
and a reduced working example in data normalization
Data normalization
normPSM for extended examples in
PSM data normalization
PSM2Pep for extended examples in
PSM to peptide summarization
mergePep for extended
examples in peptide data merging
standPep for extended
examples in peptide data normalization
Pep2Prn for
extended examples in peptide to protein summarization
standPrn for extended examples in protein data normalization.
purgePSM and purgePep for extended examples
in data purging
pepHist and prnHist for
extended examples in histogram visualization.
extract_raws
and extract_psm_raws for extracting MS file names
Variable arguments of 'filter_...'
contain_str,
contain_chars_in, not_contain_str,
not_contain_chars_in, start_with_str,
end_with_str, start_with_chars_in and
ends_with_chars_in for data subsetting by character strings
Missing values
pepImp and prnImp for
missing value imputation
Informatics
pepSig and prnSig for
significance tests
pepVol and prnVol for
volcano plot visualization
prnGSPA for gene set enrichment
analysis by protein significance pVals
gspaMap for mapping
GSPA to volcano plot visualization
prnGSPAHM for heat map
and network visualization of GSPA results
prnGSVA for gene
set variance analysis
prnGSEA for data preparation for
online GSEA.
pepMDS and prnMDS for MDS
visualization
pepPCA and prnPCA for PCA
visualization
pepLDA and prnLDA for LDA
visualization
pepHM and prnHM for heat map
visualization
pepCorr_logFC, prnCorr_logFC,
pepCorr_logInt and prnCorr_logInt for
correlation plots
anal_prnTrend and
plot_prnTrend for trend analysis and visualization
anal_pepNMF, anal_prnNMF,
plot_pepNMFCon, plot_prnNMFCon,
plot_pepNMFCoef, plot_prnNMFCoef and
plot_metaNMF for NMF analysis and visualization
Custom databases
Uni2Entrez for lookups between
UniProt accessions and Entrez IDs
Ref2Entrez for lookups
among RefSeq accessions, gene names and Entrez IDs
prepGO
for
gene
ontology
prepMSig for
molecular
signatures
prepString and anal_prnString
for STRING-DB
Column keys in PSM, peptide and protein outputs
system.file("extdata", "psm_keys.txt", package = "proteoQ")
system.file("extdata", "peptide_keys.txt", package = "proteoQ")
system.file("extdata", "protein_keys.txt", package = "proteoQ")
# ===================================
# MDS
# ===================================
## !!!require the brief working example in `?load_expts`
# global option
scale_log2r <- TRUE
## peptides
# all samples
pepMDS(
col_select = Select,
filter_peps_by = exprs(pep_n_psm >= 10),
show_ids = FALSE,
filename = "peps_rowfil.png",
)
# selected samples
pepMDS(
col_select = BI,
col_shape = Shape,
col_color = Alpha,
filter_peps_by = exprs(pep_n_psm >= 10),
show_ids = FALSE,
filename = "peps_rowfil_colsel.png",
)
# column `Alpha` will be used at the default of
# `col_alpha = NULL`;
# To bypass the aesthetics under column `Alpha`,
# use `col_alpha = NA`
# (the same applies to other aesthetics, and PCA and LDA)
pepMDS(
col_select = Select,
col_alpha = NA,
filter_peps_by = exprs(pep_n_psm >= 10),
show_ids = FALSE,
filename = "peps_rowfil_no_alpha.png",
)
## proteins
prnMDS(
col_color = Color,
col_shape = Shape,
show_ids = FALSE,
filter_peps_by = exprs(prot_n_pep >= 5),
filename = "prns_rowfil.png",
)
# custom palette
prnMDS(
col_shape = Shape,
color_brewer = Set1,
show_ids = FALSE,
filename = "my_palette.png",
)
## additional row filtration by pVals (proteins, impute_na = FALSE)
# if not yet, run prerequisitive significance tests at `impute_na = FALSE`
pepSig(
impute_na = FALSE,
W2_bat = ~ Term["(W2.BI.TMT2-W2.BI.TMT1)",
"(W2.JHU.TMT2-W2.JHU.TMT1)",
"(W2.PNNL.TMT2-W2.PNNL.TMT1)"],
W2_loc = ~ Term_2["W2.BI-W2.JHU",
"W2.BI-W2.PNNL",
"W2.JHU-W2.PNNL"],
W16_vs_W2 = ~ Term_3["W16-W2"],
)
prnSig(impute_na = FALSE)
# (`W16_vs_W2.pVal (W16-W2)` now a column key)
prnMDS(
col_color = Color,
col_shape = Shape,
show_ids = FALSE,
filter_peps_by = exprs(prot_n_pep >= 5),
filter_by = exprs(`W16_vs_W2.pVal (W16-W2)` <= 1e-6),
filename = pvalcutoff.png,
)
# analogous peptides
pepMDS(
col_color = Color,
col_shape = Shape,
show_ids = FALSE,
filter_peps_by = exprs(prot_n_pep >= 5),
filter_by = exprs(`W16_vs_W2.pVal (W16-W2)` <= 1e-6),
filename = pvalcutoff.png,
)
## additional row filtration by pVals (proteins, impute_na = TRUE)
# if not yet, run prerequisitive NA imputation
pepImp(m = 2, maxit = 2)
prnImp(m = 5, maxit = 5)
# if not yet, run prerequisitive significance tests at `impute_na = TRUE`
pepSig(
impute_na = TRUE,
W2_bat = ~ Term["(W2.BI.TMT2-W2.BI.TMT1)",
"(W2.JHU.TMT2-W2.JHU.TMT1)",
"(W2.PNNL.TMT2-W2.PNNL.TMT1)"],
W2_loc = ~ Term_2["W2.BI-W2.JHU",
"W2.BI-W2.PNNL",
"W2.JHU-W2.PNNL"],
W16_vs_W2 = ~ Term_3["W16-W2"],
)
prnSig(impute_na = TRUE)
prnMDS(
impute_na = TRUE,
col_color = Color,
col_shape = Shape,
show_ids = FALSE,
filter_peps_by = exprs(prot_n_pep >= 5),
filter_by = exprs(`W16_vs_W2.pVal (W16-W2)` <= 1e-6),
filename = filpvals_impna.png,
)
# analogous peptides
pepMDS(
impute_na = TRUE,
col_color = Color,
col_shape = Shape,
show_ids = FALSE,
filter_peps_by = exprs(prot_n_pep >= 5),
filter_by = exprs(`W16_vs_W2.pVal (W16-W2)` <= 1e-6),
filename = filpvals_impna.png,
)
## show ellipses
prnMDS(
show_ellipses = TRUE,
col_group = Shape,
show_ids = FALSE,
filename = ellipses_by_whims.png,
)
prnMDS(
show_ellipses = TRUE,
col_group = Color,
show_ids = FALSE,
filename = ellipses_by_labs.png,
)
## a higher dimension
pepMDS(
show_ids = FALSE,
k = 5,
dimension = 3,
filename = d3.pdf,
)
prnMDS(
show_ids = TRUE,
k = 4,
dimension = 3,
filename = d3.png,
)
# show ellipses
# (column `expt_smry.xlsx::Color` codes `labs`.)
prnMDS(
show_ids = FALSE,
show_ellipses = TRUE,
col_group = Color,
k = 4,
dimension = 3,
filename = d3_labs.png,
)
# (column `expt_smry.xlsx::Shape` codes `WHIMs`.)
prnMDS(
show_ids = FALSE,
show_ellipses = TRUE,
col_group = Shape,
k = 4,
dimension = 3,
filename = d3_whims.png,
)
# toy example of finding samples(s) that are
# most different in large fold changes;
prnMDS(
show_ids = TRUE,
dist_co = log2(4),
filename = where_are_the_large_diffs.png,
)
## custom theme
library(ggplot2)
my_mds_theme <- theme_bw() + theme(
axis.text.x = element_text(angle=0, vjust=0.5, size=16),
axis.text.y = element_text(angle=0, vjust=0.5, size=16),
axis.title.x = element_text(colour="black", size=18),
axis.title.y = element_text(colour="black", size=18),
plot.title = element_text(face="bold", colour="black", size=20, hjust=0.5, vjust=0.5),
panel.grid.major.x = element_blank(),
panel.grid.minor.x = element_blank(),
panel.grid.major.y = element_blank(),
panel.grid.minor.y = element_blank(),
legend.key = element_rect(colour = NA, fill = 'transparent'),
legend.background = element_rect(colour = NA, fill = "transparent"),
legend.title = element_blank(),
legend.text = element_text(colour="black", size=14),
legend.text.align = 0,
legend.box = NULL
)
pepMDS(
impute_na = FALSE,
col_color = Color,
col_shape = Shape,
show_ids = FALSE,
filter_peps_by = exprs(prot_n_pep >= 5),
filter_by = exprs(`W16_vs_W2.pVal (W16-W2)` <= 1e-6),
theme = my_mds_theme,
filename = my_theme.png,
)
## direct uses of ggplot2
library(ggplot2)
res <- prnMDS(filename = foo.png)
p_fil <- ggplot(res, aes(x = Coordinate.1, y = Coordinate.2)) +
geom_point(aes(colour = Color, shape = Shape, alpha = Alpha), size = 4, stroke = 0.02) +
scale_alpha_manual(values = c(.5, .9)) +
stat_ellipse(aes(fill = Shape), geom = "polygon", alpha = .4) +
guides(fill = FALSE) +
labs(title = "", x = "Coordinate 1", y = "Coordinate 2") +
coord_fixed()
ggsave(file.path(dat_dir, "Protein/MDS/my_ggplot2_fil.png"))
## Not run:
prnMDS(
col_color = "column_key_not_existed",
col_shape = "another_missing_column_key"
)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.