A Go library providing DataFrames, Series, and data wrangling operations for structured data manipulation.
Gota is a Go library that implements DataFrames and Series for structured data manipulation. It provides data wrangling operations like filtering, aggregation, joining, and transformation, bringing data science workflows to Go. The library handles tabular data with column type integrity and supports various data formats.
Go developers working with structured data, data engineers building ETL pipelines in Go, and data scientists seeking performance-oriented data manipulation tools in a compiled language.
Gota offers a native Go solution for DataFrame operations without relying on Python/R bridges, providing type safety, performance, and seamless integration with the Go ecosystem and Gonum for numerical computing.
Gota: DataFrames and data wrangling in Go (Golang)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Ensures column integrity with supported types (Int, Float, String, Bool), preventing common data type errors during manipulation, as highlighted in the DataFrame usage examples.
Supports expressive method chaining for data wrangling, allowing filters, selections, and mutations in sequence, as demonstrated in the README's chaining section.
Loads data from CSV, JSON, structs, maps, and records with configurable type detection, simplifying ingestion from various formats without external dependencies.
Compatible with gonum/mat matrices for numerical computing, enabling seamless workflows between data frames and mathematical operations, as noted in the integration example.
The README explicitly warns that the API is still in flux, posing risks for production use due to potential breaking changes and requiring frequent updates.
Only supports Int, Float, String, and Bool series, lacking native handling for dates, times, or complex types, which may require manual workarounds for real-world data.
Aggregation and filtering are provided, but advanced statistical operations common in pandas or R are missing, forcing users to implement custom functions or rely on external libraries.
gota is an open-source alternative to the following products:
Pandas is a fast, powerful, and flexible open-source data analysis and manipulation library for Python, built on top of NumPy.
data.table is an R package that provides an enhanced version of data.frame with faster performance and more concise syntax for data manipulation operations.
dplyr is an R package for data manipulation that provides a grammar of data manipulation with functions like filter, select, mutate, and summarize.