1

GitHub - jpoly1219/gambas: Data analysis tool for Go. Similar to the famous Pyth...

 1 year ago
source link: https://github.com/jpoly1219/gambas
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

gambas


gambas is a data analysis package for Go that provides an intuitive way to manipulate tabular data. The project is inspired by the famous Python library pandas.

Installation


$ go get -u github.com/jpoly1219/gambas

Documentation


The documentation can be found in our pkg.go.dev page.

Project Goals


  • Provide basic features from the pandas tutorial.
    • Providing Series and DataFrame data types
    • Reading and writing tabular data
      • Reading CSV files
      • Writing to CSV files
      • Reading Excel files
      • Writing to Excel files
      • Reading JSON files
      • Writing to JSON files
    • Selecting a subset of data
      • At, IAt
      • Loc, ILoc
    • Plotting
    • Creating new columns derived from existing columns
      • Creating new columns
      • Applying operations to the new column
      • Renaming columns
    • Calculating summary statistics
      • Mean, median, standard deviation
      • Min, max, quartiles
      • Count, describe
    • Reshaping the layout of tables
      • Sorting by index
      • Sorting by values
      • Sorting by given index
      • Groupby
      • Pivot (long to wide format)
      • PivotTable (long to wide format)
      • Melt (wide to long format)
    • Combining data from multiple tables
      • Concatenate
      • Merge
    • Handling time series data
      • Timestamp type
      • Timestamp type methods
      • ToDatetime
    • Manipulating textual data
    • Multiindex
  • Documentation (pkg.go.dev page)
  • Project website
  • Project logo

Philosophy


gambas was created to serve the needs of Go developers who wanted a robust data analysis package. pandas is an amazing tool, and is considered the industry standard when it comes to data organization and manipulation.

We didn't have a solid alternative in the Go realm. According to the Go Developer Survey 2021 Results, missing critical libraries were one of the most common barriers to using Go. You may have used Go for some time now, but you might've missed some of the libraries you used when you were using Python. gambas aims to scratch that itch. You will be able to tap into the superpowers of pandas while using your favorite language Go.

Go is a very attractive language with a very loyal userbase. It provides a pleasant developer experience with its simple syntax and strong typing. However, Go currently tends to be skewed towards developing services. 49% of projects written in Go are API/RPC services, and another 10% are for web services. The ultimate goal for gambas is to allow the Go programming language to be a major player in the data analysis field.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK