Noj

1 Noj - a data science toolkit

Noj logo

ci workflow Clojars Project

Noj is an out-of-the-box Clojure library designed to streamline data science workflows for both newcomers and experienced users. Noj provides a tested and integrated collection of tools that are known to work seamlessly together from day one, rather than requiring users to find, configure, and integrate multiple libraries separately.

Traditional data science setups involve piecing together various libraries for different tasks, which can be time-consuming and error-prone. Noj solves this problem by providing a curated collection of libraries that covers:

  • Bridges & Interop: Connect and interact with other language systems and libraries
  • Data Processing: Efficiently transform and prepare data for analysis
  • High-Performance Computing: Access optimized tools to tackle complex computations
  • Mathematics & Statistics: Perform comprehensive mathematical and statistical operations
  • Machine Learning: Access powerful machine learning tools and models
  • Data Visualization: Generate clear and compelling data visualizations

All included libraries are designed with consistent data handling as a unified architecture - they use tech.ml.dataset directly for tabular data structures or provide high interoperability with it, and support kindly framework for data visualization across different output formats.

1.1 Benefits and Foundation

Noj goes above and beyond as a comprehensive bundling solution:

  • Pre-integrated and Tested Libraries: Users receives a collection of carefully curated libraries that are guaranteed to work together, eliminating compatibility issues and reducing setup time.
  • Comprehensive Documentation: Noj provides extensive documentation and tutorials that demonstrate how to use different libraries in combination, with practical examples and useful resources.
  • Development-Ready Environment: For hassle-free setup, Noj includes a devcontainer that handles complex native dependencies automatically.

1.2 General Info

Resource Link
Website https://scicloj.github.io/noj/
Source Code GitHub
Dependencies Clojars Project
Build Status CI Workflow
License EPL v1.0
Development Status Beta stage
Developer Chat #noj-dev on Clojurians Zulip
User Support #data-science on Clojurians Zulip

1.3 Learning Resources

The following list of resources provides comprehensive guidance for learning Noj, from interactive notebooks and video tutorials to documentation and real-world data examples.

Resource Type Link
📖 Notebook/Documentation Noj Getting Started Notebook
🐙 Repo Noj Getting Started Repo
🎥 Video Noj Getting Started Intro
🎥 Video Noj Getting Started: VS Code, Calva, and Clay
💾 Data Source Clojure Events Calendar Feed
🎥 Video Noj in a JAR Intro
📖 Notebook/Documentation Clay Documentation
🎥 Video Clay Overview Demo

1.4 Chapters of this book

source: notebooks/index.clj