Make groups of genes using expression profile. Note that this function doesn't calculate significant difference between groups, so the matrix used as input should be already filtered to contain only genes that are significantly different.
degPatterns(ma, metadata, minc = 15, summarize = "merge", time = "time", col = NULL, consensusCluster = FALSE, reduce = FALSE, cutoff = 0.7, scale = TRUE, pattern = NULL, groupDifference = NULL, eachStep = FALSE, plot = TRUE, fixy = NULL)
ma | log2 normalized count matrix |
---|---|
metadata | data frame with sample information. Rownames
should match |
minc | integer minimum number of genes in a group that will be return |
summarize | character column name in metadata that will be used to group
replicates. If the column doesn't exist it'll merge the |
time | character column name in metadata that will be used as variable that changes, normally a time variable. |
col | character column name in metadata to separate samples. Normally control/mutant |
consensusCluster | Indicates whether using ConsensusClusterPlus
or |
reduce | boolean reduce number of clusters using correlation values between them. |
cutoff | integer threshold for correlation expression to merge clusters (0 - 1) |
scale | boolean scale the |
pattern | numeric vector to be used to find patterns like this from the count matrix. As well, it can be a character indicating the genes inside the count matrix to be used as reference. |
groupDifference | Minimum abundance difference between the
maximum value and minimum value for each feature. Please,
provide the value in the same range than the |
eachStep | Whether apply |
plot | boolean plot the clusters found |
fixy | vector integers used as ylim in plot |
list wiht two items:
df
is a data.frame
with two columns. The first one with genes, the second
with the clusters they belong.
pass
is a vector of the clusters that pass the minc
cutoff.
plot
ggplot figure.
hr
clustering of the genes in hclust format.
profile
normalized count data used in the plot.
raw
data.frame with values used for the plots.
It would be used cluster::diana()
function
to detect a value to cut the expression based clustering
at certain height or ConsensusClusterPlus.
It can work with one or more groups with 2 or
more several time points. The different patterns can be merged
to get similar ones into only one pattern. The expression
correlation of the patterns will be used to decide whether
some need to be merged or not.
data(humanGender) library(SummarizedExperiment) ma <- assays(humanGender)[[1]][1:100,] des <- colData(humanGender) res <- degPatterns(ma, des, time="group")#>#>#>