https://github.com/benmaier/similarity-indices
Compute diverse incidence based or abundance based similarity indices between two numpy arrays.
https://github.com/benmaier/similarity-indices
Last synced: about 2 months ago
JSON representation
Compute diverse incidence based or abundance based similarity indices between two numpy arrays.
- Host: GitHub
- URL: https://github.com/benmaier/similarity-indices
- Owner: benmaier
- Created: 2016-06-24T14:42:29.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2016-06-26T19:00:36.000Z (almost 9 years ago)
- Last Synced: 2025-05-01T15:08:11.579Z (about 2 months ago)
- Language: Python
- Size: 3.91 KB
- Stars: 2
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# SimInd
Provides two classes for the computation of either incidence based or abundance based similarity measures for data in numpy arrays.
## Install
```bash
$ pip install ../simind # or
$ python setup.py install
```## Example
```python
from __future__ import print_function
import simind
import numpy as npa = np.array([ 0, 1, 2, 3, 4 ],dtype=int)
b = np.array([ 3, 4, 5], dtype=int)# initialize
similarities = simind.incidence_based_similarity(a,b,assume_unique=True)print(similarities.jaccard())
print(similarities.sorensen())
print(similarities.ochiai())
print(similarities.lennon())
print(similarities.kulczynski_cody())
print(similarities.kulczynski())
print(similarities.anderberg())# for the abundance based similarities, one needs dictionaries with weights
# (traditionally, the weight would be the number of times, species "key" was
# found, but the weights don't have to be integers)
wa = { 0: 0.5, 1: 2, 2: 0.75, 3: 1, 4: 1 }
wb = { 3: 2, 4: 1, 5: 2 }# initialize
similarities = simind.abundance_based_similarity(a,b,wa,wb,assume_unique=True)print("===========")
print(similarities.jaccard())
print(similarities.sorensen())
print(similarities.ochiai())
print(similarities.lennon())
print(similarities.kulczynski_cody())
print(similarities.kulczynski())
print(similarities.anderberg())number_of_species_A = 50
number_of_species_B = 100
overlap_AB = 20
similarities = simind.similarity(number_of_species_A,number_of_species_B,overlap_AB)print("===========")
print(similarities.jaccard())
print(similarities.sorensen())
print(similarities.ochiai())
print(similarities.lennon())
print(similarities.kulczynski_cody())
print(similarities.kulczynski())
print(similarities.anderberg())
```