Description Usage Arguments Details Value Author(s) See Also
Two rankings are accepted as input in the form of corresponding ranks in two lists. The weighted overlap score is computed efficiently without explicitly computing overlaps.
1 | scoreRankings(r1, r2, nn, bases, two.sided=TRUE)
|
r1 |
integer, ranks in the first list. |
r2 |
integer, ranks in the second list.
|
nn |
for each alpha to be used as weighting parameter, this array of integers contains the maximal rank for which overlaps are considered. |
bases |
for each alpha to be used as weighting parameter, this double array contains exp(-alpha). |
two.sided |
if |
The score to be computed is defined as the sum over the first ranks in two lists. The summed up measure is the weighted overlap between the two lists:
score := sum_(R=1)^n exp(-alpha R) * overlap(L1[1:R],L2[1:R])
where n is the maximal rank to be considered and L1/L2 denote the sorted lists to be compared. In this score, each gene contributes from the first rank where it is in the overlap up to n. For gene i:
score_i = sum_(R=max(r1[i],r2[i])^n exp(-alpha R))
where r1/r2 are the ranks of genes in L1/L2. Since this is a finite geometric series, it can be used to speed up computation of our score:
score_i = (exp(-alpha min(r1[i],r2[i])) - exp(-alpha n))/(1 - exp(-alpha))
score = sum_(i|r1[i]<n&r2[i]<n) score_i
Analogue computations are performed by scoreRankings
for list
begins and list ends.
An array of doubles with one score per weighting parameter to be considered is returned.
Claudio Lottaz
shuffledRandomScores
,compareLists
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.