pca_by_var | R Documentation |
Overlay numeric metadata variables onto a PCA score plot. Useful during exploratory analysis
pca_by_var(
ddata,
mdata,
PC = c(1, 2),
biplot = TRUE,
score_colour = FALSE,
score_label = FALSE
)
ddata |
dataframe. samples in rows. sample ids in rownames. rows should match mdata |
mdata |
dataframe. samples in rows. sample ids in rownames. rows should match ddata. Variables can be numeric, characters, or factors |
PC |
numeric vector of length 2. specifies the PCs to plot.
default is |
biplot |
logical. show PCA as score plot or biplot |
score_colour |
string. colour data points on score/biplot.
should be column name in mdata.
When set to |
score_label |
string. label data ponts on score/biplot.
should be column name in mdata.
When set to |
named list of plots. First plot in list is main_pca. Subsequent plots in list correspond to metadata variables (columns in metadata)
set.seed(1)
data(dss_example)
ddata <- dss_example$merged_abundance_id[,2:26]
rownames(ddata) <- dss_example$merged_abundance_id[,1]
ddata <- as.data.frame(t(ddata))
mdata <- dss_example$metadata
mdata <- mdata[match(rownames(ddata), mdata$sampleID),]
# creating some dummy metadata variable
mdata$var1 <- rep(rnorm(5, 25, 3), each=5)
mdata$var2 <- rep(rnorm(5, 3, 0.5), 5)
mdata$var3 <- as.factor(rep(letters[1:5], each=5))
mdata <- mdata[,c('Phenotype','var1','var2','var3')]
p_list <- pca_by_var(ddata, mdata)
# biplot
p_list$main_pca
# pca with metadata variables overlayed
p_list$Phenotype
p_list$var1
p_list$var2
p_list$var3
# can use cowplot::plot_grid to put all plots into one
cowplot::plot_grid(plotlist=list(p_list$Phenotype, p_list$var1, p_list$var2, p_list$var3))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.