Absortio

Email → Summary → Bookmark → Email

GitHub - moustafa-nasr/Fahmatrix: Fahmatrix is a lightweight, modern Java library for working with tabular data, inspired by Python's Pandas and rooted in the idea of making data understanding (fahm) easy on the JVM.

Extracto

Fahmatrix is a lightweight, modern Java library for working with tabular data, inspired by Python's Pandas and rooted in the idea of making data understanding (fahm) easy on the JVM. - moustafa...

Resumen

Resumen Principal

Fahmatrix es una innovadora biblioteca Java diseñada para simplificar el trabajo con datos tabulares directamente en la Máquina Virtual Java (JVM). Inspirada en la popular biblioteca Pandas de Python, su propósito fundamental es hacer la comprensión de datos (fahm) accesible y sencilla para los desarrolladores Java. La biblioteca se distingue por ofrecer una API intuitiva y ligera, inicialmente sin dependencias externas, lo que facilita su integración. Actualmente, Fahmatrix permite la lectura y previsualización de archivos CSV con gran facilidad, además de ofrecer funcionalidades esenciales como la impresión formateada de DataFrames y la exploración de filas superiores e inferiores (head(), tail()). Un punto fuerte clave es su ya implementado soporte para una amplia gama de agregaciones estadísticas, incluyendo conteo, mínimo, máximo, suma, media, mediana, desviación estándar y percentiles personalizados. Su hoja de ruta promete expandir significativamente estas capacidades, incorporando filtrado de filas, selección de columnas, agrupaciones (GroupBy), tablas pivote, exportación a CSV/JSON e inferencia de tipos, consolidándose como una solución integral para el análisis de datos dentro del ecosistema Java.

Elementos Clave

  • Filosofía y Propósito Central: "Fahmatrix" surge como una respuesta a la carencia percibida de una API limpia y expresiva para DataFrames en Java, con el claro objetivo de facilitar la comprensión de datos (fahm). Su nombre, que fusiona "fahm" (claridad) y "matrix" (pensamiento estructurado), refleja su compromiso con una **gestión de datos

Contenido

Fahmatrix

Fahmatrix is a lightweight, modern Java library for working with tabular data, inspired by Python's Pandas and rooted in the idea of making data understanding (fahm) easy on the JVM.

🚀 Intuitive API for tabular data
📄 Easy CSV reading and previewing
🔍 Row filtering and column selection
📊 Aggregations, grouping, and sorting (coming soon)
🧩 No external dependencies (for now)


🔧 Installation

📦 Using GitHub Releases

Visit Releases and download the latest JAR file.

Include it manually in your project’s classpath or use Maven/Gradle if you're pulling from GitHub Packages (to be added in future versions).

If you're building locally:

git clone https://github.com/moustafa-nasr/fahmatrix.git
cd fahmatrix
./gradlew build

📚 Example Usage

import com.fahmatrix.DataFrame;

public class Main {
    public static void main(String[] args) {
        DataFrame df = DataFrame.readCSV("data.csv");
        df.print();
    }
}

📜 Docs

You can find compiled Java Docs over here


✨ Features

  • Load CSV files into DataFrame
  • Pretty-print data to console
  • View top rows with head() or bottom ones with tail()
  • Aggregations (count, min, max, sum, mean ,median, standard deviation, 25%, 50%, 70%, custom percentage)

Coming Soon:

  • Filter rows and select columns
  • GroupBy and pivot tables
  • Data export to CSV or JSON
  • Type inference and conversion

💡 Why Fahmatrix?

Java has lacked a clean, expressive DataFrame API — until now.

Fahmatrix brings data clarity (fahm) and structured thinking (matrix) together to give Java developers the tools they need to work with tabular data effectively, without leaving the JVM.


🙌 Support This Project

If you find Fahmatrix useful, consider sponsoring me to help support ongoing development, documentation, and future features.


📝 License

MIT License. Use it freely in your projects.

Fuente: GitHub