stdlib-js / stdlib-js/stdlib

[RFC]: Canberra distance between two strided arrays

Open
#831 11 comments 0 reactions 0 assignees View on GitHub
C difficulty: 3 Feature JavaScript Math Native Addons priority: Normal RFC
Dominant language
JavaScript
Stars
6k
Forks
1.3k
Avg merge
1d 3h
Merged PRs (30d)
611

Description

### Description

This RFC proposes adding a function to calculate the Canberra distance between two strided arrays.

Package: `@stdlib/math/strided/distances/canberra`

The function should have the following signature `canberra( N, x, strideX, y, strideY )`.

The Canberra distance is a measure of dissimilarity between two samples in a data set.

The Canberra distance between two elements is as follows:

```js
(abs(x[i] - y[i]) / (abs(x[i]) + abs(y[i]))
```

See:
- [SciPy](https://docs.scipy.org/doc/scipy/reference/generated/scipy.spatial.distance.canberra.html#scipy.spatial.distance.canberra)
- [compute-io](https://github.com/compute-io/canberra-distance)

### Related Issues

None.

### Questions

No.

### Other

No.

### Checklist

- [X] I have read and understood the [Code of Conduct](https://github.com/stdlib-js/stdlib/blob/develop/CODE_OF_CONDUCT.md).
- [X] Searched for existing issues and pull requests.
- [X] The issue name begins with `RFC:`.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.