Skip to content

v1.1.0 — Datatrax rename + classic ML toolkit

Choose a tag to compare

@rbmuller rbmuller released this 01 May 14:00
· 7 commits to main since this release

First release under the new datatrax name. Repository renamed from devtools; module path is now github.com/rbmuller/datatrax.

Added — ml package (pure Go, zero external dependencies)

Algorithms (7): Linear Regression (gradient descent + normal equation), Logistic Regression, KNN (euclidean/manhattan + optional inverse-distance weighting), K-Means (Lloyd's + K-Means++ init), Decision Tree (gini/entropy, String() viz, feature importance), Gaussian Naive Bayes, Multinomial Naive Bayes (Laplace smoothing).

Dataset infrastructure: LoadCSV, Split (train/test), Shuffle, Shape.
Preprocessing: MinMaxScale, StandardScale, column-wise statistics.
Encoding: LabelEncode / LabelDecode, OneHotEncode.
Metrics: Accuracy, Precision, Recall, F1Score, ConfusionMatrix, MSE, RMSE, MAE, R2Score.
Cross-validation: KFoldSplit.
Benchmarks: ml/benchmark_test.go. Apple M4 reference numbers in README.
Examples: examples/classification/, examples/regression/, examples/clustering/.

Added — utility packages (8)

batch, coerce, dateutil, dedup, errutil, maputil, mathutil, strutil — restructured into focused, generics-first packages. Legacy dedup/search helpers collapsed into Deduplicate[T comparable] and Contains[T comparable].

Added — CI & quality

  • GitHub Actions: go vet + go test -race -coverprofile
  • MIT license, godoc on all public functions, 47 unit tests
  • Listed on awesome-go under Machine Learning
  • Go Report Card: A+

Removed

  • gopkg.in/guregu/null.v3 dependency — repository is now zero-dep stdlib-only.
  • Legacy mail/ and logging/ packages.

Install: go get github.com/rbmuller/datatrax@v1.1.0