| conversions | R Documentation |
Converts a dense similarity matrix into a sparse one or vice versa
## S4 method for signature 'matrix'
as.SparseSimilarityMatrix(s, lower=-Inf)
## S4 method for signature 'Matrix'
as.SparseSimilarityMatrix(s, lower=-Inf)
## S4 method for signature 'sparseMatrix'
as.SparseSimilarityMatrix(s, lower=-Inf)
## S4 method for signature 'matrix'
as.DenseSimilarityMatrix(s, fill=-Inf)
## S4 method for signature 'Matrix'
as.DenseSimilarityMatrix(s, fill=-Inf)
## S4 method for signature 'sparseMatrix'
as.DenseSimilarityMatrix(s, fill=-Inf)
s |
a similarity matrix in sparse or dense format (see details below) |
lower |
cut-off threshold to apply when converting similarity
matrices into sparse format. All similarities lower than or equal to
|
fill |
value to fill in for entries that are missing from sparse
similarity matrix 's' (defaults to |
The function as.SparseSimilarityMatrix takes a matrix argument,
removes all diagonal elements and all values that are lower than or
equal to the cut-off threshold lower and returns a sparse
matrix of class Matrix:dgTMatrix-class.
If the function as.DenseSimilarityMatrix is called for a
sparse matrix (class sparseMatrix or any
class derived from this class), a dense matrix is returned, where all
values that were missing in the sparse matrix are replaced with
fill.
as.DenseSimilarityMatrix can also be called for dense
matrix and Matrix:Matrix objects.
In this case, as.DenseSimilarityMatrix assumes that the
matrices have three columns that encode for a sparse matrix
in the same way as the Matlab implementation of Frey's and Dueck's
sparse affinity propagation accepts it:
the first column contains 1-based row indices, the second column
contains 1-based column indices, and the third column contains the
similarity values. The same format is also accepted by
as.SparseSimilarityMatrix to convert a sparse similarity matrix
of this format into a Matrix:Matrix object.
Note that, for matrices of this format,
as.DenseSimilarityMatrix replaces the deprectated function
sparseToFull that was used in older versions of the package.
Note that as.SparseSimilarityMatrix and
as.DenseSimilarityMatrix are no S4 coercion methods.
There are no classes named SparseSimilarityMatrix
or DenseSimilarityMatrix.
returns a square similarity matrix in sparse format (class
Matrix:dgTMatrix-class or in dense format (standard class
matrix).
Ulrich Bodenhofer
https://github.com/UBod/apcluster
Frey, B. J. and Dueck, D. (2007) Clustering by passing messages between data points. Science 315, 972-976. DOI: \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1126/science.1136800")}.
Bodenhofer, U., Kothmeier, A., and Hochreiter, S. (2011) APCluster: an R package for affinity propagation clustering. Bioinformatics 27, 2463-2464. DOI: \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1093/bioinformatics/btr406")}.
## create similarity matrix in sparse format according to Frey and Dueck
sp <- matrix(c(1, 2, 0.5, 3, 1, 0.2, 5, 4, -0.2, 3, 4, 1.2), 4, 3, byrow=TRUE)
sp
## perform conversions
as.DenseSimilarityMatrix(sp, fill=0)
as.SparseSimilarityMatrix(sp)
## create dense similarity matrix
cl1 <- cbind(rnorm(20, 0.2, 0.05), rnorm(20, 0.8, 0.06))
cl2 <- cbind(rnorm(20, 0.7, 0.08), rnorm(20, 0.3, 0.05))
x <- rbind(cl1, cl2)
sim <- negDistMat(x, r=2)
ssim <- as.SparseSimilarityMatrix(sim, lower=-0.2)
## run apcluster() on the sparse similarity matrix
apres <- apcluster(ssim, q=0)
apres
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.