For a given matrix of annotation information, this function returns the information ordered according to the best fit with the data.
Usage
orderGoAnnotations(
object,
fcol = "GOAnnotations",
k = 1:5,
n = 5,
p = 1/3,
verbose = TRUE,
seed
)
Arguments
- object
An instance of class
MSnSet
.- fcol
The name of the annotations matrix. Default is
GOAnnotations
.- k
The number of clusters to test. Default is
k = 1:5
- n
The minimum number of proteins per component cluster.
- p
The normalisation factor, per
k
tested- verbose
A
logical
indicating if a progress bar should be displayed. Default isTRUE
.- seed
An optional random number generation seed.
Details
As there are typically many protein/annotation sets that may fit the data we order protein sets by best fit i.e. cluster tightness, by computing the mean normalised Euclidean distance for all instances per protein set.
For each protein set i.e. proteins that have been labelled
with a specified term/information criteria, we find the best
k
cluster components for the set (the default is to
testk = 1:5
) according to the minimum mean normalised
pairwise Euclidean distance over all component clusters.
(Note: when testing k
if any components are found to
have less than n
proteins these components are not
included and k
is reduced by 1).
Each component cluster is normalised by N^p
(where
N
is the total number of proteins per component,
and p
is the power). Hueristally, p = 1/3
and normalising by N^1/3
has been found the optimum
normalisation factor.
Candidates in the matrix are ordered according to lowest mean normalised pairwise Euclidean distance as we expect high density, tight clusters to have the smallest mean normalised distance.
This function is a wrapper for running clustDist
,
getNormDist
, see the "Annotating spatial proteomics data"
vignette for more details.