Skip to content

Latest commit

 

History

History
249 lines (190 loc) · 19.2 KB

README.md

File metadata and controls

249 lines (190 loc) · 19.2 KB

Go Data Science Tooling, Packages, Libraries, etc.

This is a curated list of well-maintained and developing tools, packages, libraries, etc. related to doing data science with Go.

Also, this space includes a list of proposed packages that would fill certain gaps in the ecosystem or provide enhanced functionality.

Proposed

Keras

  • tfkg - Create, train, and save Tensorflow Keras models all in Golang .
  • go-keras - A Golang implementation of Keras.

Arithmetic

Bioinformatics

Classification

Clustering

  • github.com/salkj/kmeans - A ready-to-use naive kmeans package for Go.
  • github.com/mpraski/clusters - Go implementations of several clustering algoritms (k-means++, DBSCAN, OPTICS), as well as utilities for importing data and estimating optimal number of clusters.

CSV

Distributed Data Analysis/Pipelining

Geospatial

General data munging

General purpose machine learning

Graphs

JSON

I/O

Matrices/Arrays/Linear Algebra

Neural Networks

NLP

Non-SQL Database Interactions

Parquet

Plotting/dashboarding

Probability/statistics/experiments

Recommendation Systems

Regression

SQL-like Database Interactions

Time Series

Web Scraping

Proposed

Gopher Data – Gophers doing data analysis, no schedule events, last blog post was 2017
Gopher Notes – Golang in Jupyter Notebooks
Lgo – Interactive programming with Jupyter for Golang
Gota – Data frames for Go, “The API is still in flux so use at your own risk.”
qframe – Immutable data frames for Go, better speed than Gota but not as well documented
GoLearn – Machine Learning for Go
Gorgonia – Library for machine learning in Go
Go Sklearn – Port of sci-kit learn from Python, still active but only a couple committers, early but promising
Gonum – Numerical library for Go, very promising and active