Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hrishibawane/npjs-basic
A numpy-like npm package for mathematical array functions and manipulations for js
https://github.com/hrishibawane/npjs-basic
array-manipulations npm-package numpy
Last synced: 2 months ago
JSON representation
A numpy-like npm package for mathematical array functions and manipulations for js
- Host: GitHub
- URL: https://github.com/hrishibawane/npjs-basic
- Owner: hrishibawane
- License: mit
- Created: 2020-04-30T16:08:20.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-12-30T20:18:30.000Z (almost 2 years ago)
- Last Synced: 2024-10-04T00:53:51.407Z (3 months ago)
- Topics: array-manipulations, npm-package, numpy
- Language: JavaScript
- Homepage:
- Size: 110 KB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# npjs-basic
[![npm](https://img.shields.io/npm/v/npjs-basic)](https://www.npmjs.com/package/npjs-basic)
[![first-timers-only](https://img.shields.io/badge/first--timers--only-friendly-blue.svg?style=flat-square)](https://www.firsttimersonly.com/)A numpy-like package for mathematical array functions and manipulations
## Introduction
npjs is a lightweight JavaScript library providing a subset of Python's numpy package. This package is written in pure Javascript and requires no dependencies. This package also includes some extra functions ("min_max_normalize" as of now).
## Usage
```js
const np = require('npjs-basic');let arr = [[1, 2, 3], [4, 5, 6]];
np.shape(arr, (err, res) => {
if (err) return console.error(err);
console.log(res);
// res = [2, 3]
});let flatArr = np.flatten(arr);
// flatArr = [1, 2, 3, 4, 5, 6]
```## Functions
- ```add(listA, listB, callback)``` - returns array of sums of corresponding elements of listA and listB of any dimensions.
- ```arange(start, stop, step)``` - returns evenly spaced values within the half-open interval ```[start, stop)``` with optional step argument.
- ```dot(listA, listB, callbacks)``` - returns dot product of listA and listB.
- ```flatten(list)``` - returns 1-D representation of any shape and any levels of nesting of list array.
- ```full(shape_array, val)``` - returns array of shape as specified in shape_array with values = val.
- ```linspace(start, end, num)``` - returns array of numbers in range [start, end] with length = num. Default num=50 unless specified.
- ```mean(list)``` - returns mean of list elements.
- ```min_max_normalize(list, callback)``` - returns array after applying Min-Max Normalization on list elements.
- ```norm(list)``` - returns norm as in linear algebra for list elements.
- ```shape(list, callback)``` - returns dimensions of input array if the array is uniform or error otherwise.
- ```subtract(listA, listB, callback)``` - returns array of differences of corresponding elements of listA and listB of any dimensions.
## Contribution
Happy to recieve or provide contributions related to this package. Feel free to raise an issue if you find one. [Github Link](https://github.com/hrishibawane/npjs)