A 10-week, 20-lesson beginner curriculum from Microsoft covering core data science topics with Python, quizzes and projects.
jtablesaw/tablesaw
A Java dataframe library for loading, cleaning, transforming and summarizing tabular data, with Plotly-based charting.
- Stars
- 3,769
- Forks
- 648
- Open issues
- 152
- Last commit
- 3 months ago
What is it?
Tablesaw is a dataframe and visualization library for Java. It covers the common steps of working with tabular data: importing from CSV, TSV, JSON, HTML, Excel, fixed-width files and RDBMS sources (local or remote, including HTTP and S3), then sorting, grouping, filtering, joining and handling missing values. Results can be exported back to CSV, JSON, HTML or fixed-width text.
For analysis, it provides descriptive statistics such as mean, median, percentiles, standard deviation, skewness and kurtosis. Charts are produced through a wrapper around the Plotly.js library, and the project states that its output can be used to prepare data for Java machine learning libraries such as Smile, Tribuo and DL4J.
Tablesaw is distributed as a Maven artifact, with optional modules for Excel, HTML, JSON and plotting. It is usually used from Jupyter-style notebooks through IJava or BeakerX, or directly inside Java applications.
Key features
- 01Imports data from CSV, TSV, JSON, HTML, Excel, fixed-width files and RDBMS, including remote sources.
- 02Exports tables to CSV, JSON, HTML or fixed-width text.
- 03Supports sorting, grouping, filtering, joining, transposing and missing-value handling.
- 04Provides descriptive statistics such as percentiles, skewness and kurtosis.
- 05Creates charts through a wrapper around Plotly.js.
Use cases
- Cleaning and reshaping CSV or Excel data inside a Java backend or batch job.
- Exploratory data analysis in Jupyter notebooks using Java.
- Preparing feature tables for Java machine learning libraries such as Smile or DL4J.
Quick start
- 1
Add tablesaw-core as a Maven dependency (replace the version placeholder with the latest release version)
In collections
Topics
FAQ
- What is tablesaw?
- A Java dataframe library for loading, cleaning, transforming and summarizing tabular data, with Plotly-based charting. Tablesaw is a dataframe and visualization library for Java. It covers the common steps of working with tabular data: importing from CSV, TSV, JSON, HTML, Excel, fixed-width files and RDBMS sources (local or remote, including HTTP and S3), then sorting, grouping, filtering, joining and handling missing values. Results can be exported back to CSV, JSON, HTML or fixed-width text.
- Is tablesaw free to use? What license does it have?
- tablesaw is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is tablesaw still maintained?
- Updated within 6 months. The last commit to tablesaw was on Aug 8, 2026.
- What can I use tablesaw for?
- Cleaning and reshaping CSV or Excel data inside a Java backend or batch job. Exploratory data analysis in Jupyter notebooks using Java. Preparing feature tables for Java machine learning libraries such as Smile or DL4J.
- How do I install tablesaw?
- Add tablesaw-core as a Maven dependency (replace the version placeholder with the latest release version)
- Where can I get tablesaw?
- The source code and installation instructions are on GitHub: https://github.com/jtablesaw/tablesaw
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A curated Awesome-style list of Python resources for data science, covering libraries, tutorials, books, datasets and talks.
An open-source visualization platform for exploring, comparing and analyzing recorded or live time-series and multimodal robotics data.
Free, open-source interactive plotting library for .NET that renders charts in GUI apps, consoles, Blazor and notebooks.
Python DataFrame library for lazily exploring and visualizing billion-row tabular datasets without loading them fully into memory.
A lightweight Python library for defining data transformations as testable, self-documenting DAGs that run wherever Python runs.