Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/akhilpandey95/numgo
Numerical Calculations and Operations in Go
https://github.com/akhilpandey95/numgo
golang golang-library mathematics numerical-calculations
Last synced: about 2 months ago
JSON representation
Numerical Calculations and Operations in Go
- Host: GitHub
- URL: https://github.com/akhilpandey95/numgo
- Owner: akhilpandey95
- License: mpl-2.0
- Created: 2017-10-08T02:38:40.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2018-02-09T04:26:56.000Z (almost 7 years ago)
- Last Synced: 2024-06-20T07:17:19.304Z (6 months ago)
- Topics: golang, golang-library, mathematics, numerical-calculations
- Language: Go
- Size: 68.4 KB
- Stars: 6
- Watchers: 2
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# numgo ![Build Status](https://travis-ci.org/akhilpandey95/numgo.svg?branch=test-master)
A library that is aimed at providing methods and functions that
give scope for performing numerical and scientific calculations
in `go-lang`. The core concept to `numgo` library is that everything
is an array and all operations, calculations, functions and routines
that correspond to are in reference to that `n-dimensional` array.# Inspiration
Inspired by `numpy` for `python`, `numGo` aims to replicate all the
mathematical concepts that are covered in `numpy`. Therefore, most
of the concepts and ideas are broadly taken from `numpy`.# Operations to be supported
- Algebra
- Arithmatics
- Trigonometry
- Exponents and logarithms
- Universal Functions
- Logical Functions# Installation
```shell
go get github.com/akhilpandey95/numgo
```# Usage
```go
package mainimport (
"fmt"
"github.com/akhilpandey95/numgo"
)func main() {
fmt.Println(numgo.NDArray(3, 3, 3)) // would init a NDArray of shape 3,3,3
fmt.Println(numgo.Xrange(8, 20)) // would print from 8 to 20
fmt.Println(numgo.Xrange(8, 9, 0.1)) // would print from 8.1 to 8.9
}
```# Methods
- [linalg/vectors](https://github.com/akhilpandey95/numGo/blob/master/docs/linalg/README.md) - Vectors, matrices and eigen values
- [ufunc/math](https://github.com/akhilpandey95/numGo/blob/master/docs/ufunc/README.md) - Trignometric and mathematical operations on NDArrays
- [ufunc/strings](https://github.com/akhilpandey95/numGo/blob/master/docs/ufunc/README.md) - Operations supporting string operations
- [ufunc/comparision](https://github.com/akhilpandey95/numGo/blob/master/docs/ufunc/README.md) - Comparing two NDArrays as to which is Greater, Smaller etc
- [routines/random](https://github.com/akhilpandey95/numGo/blob/master/docs/routines/README.md) - Generation of Random Numbers on NDArrays and operations on them
- [routines/sampling](https://github.com/akhilpandey95/numGo/blob/master/docs/routines/README.md) - Sampling array data of type NDArray
- [routines/distributions](https://github.com/akhilpandey95/numGo/blob/master/docs/routines/README.md) - Various Mathematical Distributions on NDArray data`NOTE:` The package in its entirety is under development `v0.1` will be shipped by the end of December 2017.
# Support
- go version go1.9 linux/amd64# License
[The MIT License](https://github.com/akhilpandey95/numGo/blob/master/LICENSE)# Contributors
Would love to see anyone willing to contribute# Maintainer
[Akhil Pandey](https://github.com/akhilpandey95)