Open-source data-science software
1215 open-source libraries, tools and applications tagged data-science, ranked by how closely data-science is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
1215 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| shankarpandala/lazypredict Lazy Predict is a Python library that trains dozens of machine learning models with minimal code to quickly identify which algorithms perfo… | 86 | 3352 | active |
| pgmpy pgmpy is a Python library for causal and probabilistic reasoning with graphical models such as Bayesian Networks, Dynamic Bayesian Networks… | 78 | 3338 | stable |
| root-project/root ROOT is a C++ data analysis framework developed at CERN for storing, processing, and visualizing large scientific datasets, with a columnar… | 96 | 3302 | stable |
| mljar/mljar-supervised MLJAR AutoML is a Python package for automated machine learning on tabular data, providing feature engineering, hyperparameter tuning, mode… | 85 | 3294 | active |
| pydata/pandas-datareader A Python library that extracts data from remote internet sources such as FRED, Fama/French, World Bank, OECD, and Eurostat directly into pa… | 87 | 3272 | active |
| tslearn-team/tslearn tslearn is a Python machine learning library dedicated to time series analysis, built on numpy and compatible with scikit-learn. It provide… | 84 | 3183 | stable |
| domokane/FinancePy FinancePy is a Python library for pricing and risk-managing financial derivatives across fixed-income, equity, FX, and credit asset classes… | 96 | 3174 | active |
| automeris-io/WebPlotDigitizer WebPlotDigitizer is a computer vision assisted web application that extracts numerical data from images of charts and plots. It has been wi… | 62 | 3169 | active |
| scikit-learn-contrib/hdbscan A high-performance Python implementation of the HDBSCAN hierarchical density-based clustering algorithm, part of the scikit-learn-contrib e… | 88 | 3154 | stable |
| blockchain-etl/ethereum-etl A Python CLI tool that extracts Ethereum blockchain data (blocks, transactions, token transfers, logs, traces, contracts) and exports it to… | 48 | 3131 | active |
| fbdesignpro/sweetviz Sweetviz is a Python library that generates high-density HTML visualizations for exploratory data analysis in just a couple of lines of cod… | 75 | 3129 | active |
| alldatacenter/alldata AllData is a definable data platform (数据中台) that integrates open-source components like DolphinScheduler, DataX, SeaTunnel, OpenMetadata, a… | 91 | 3103 | active |
| cuelang/cue CUE is an open-source data validation language and inference engine, rooted in logic programming, that merges types and values into a singl… | 10 | 3057 | active |
| montanaflynn/stats A comprehensive, dependency-free statistics library for Go providing descriptive statistics, correlation, regression, and related math func… | 96 | 3025 | stable |
| TimelyDataflow/differential-dataflow A Rust library implementing differential dataflow on top of timely dataflow, enabling data-parallel programs that efficiently process large… | 90 | 3015 | active |
| sepinf-inc/IPED IPED is an open source digital forensic tool developed by the Brazilian Federal Police for processing and analyzing digital evidence from d… | 79 | 3003 | active |
| hosseinmoein/DataFrame A high-performance, templatized C++ library providing a heterogeneous DataFrame container for in-memory data exploration, transformation, a… | 95 | 2990 | active |
| anyoptimization/pymoo pymoo is an open-source Python framework for single-, multi-, and many-objective optimization, offering state-of-the-art algorithms like NS… | 75 | 2970 | stable |
| ekzhu/datasketch datasketch is a Python library of probabilistic data structures (MinHash, Weighted MinHash, HyperLogLog, HyperLogLog++) and indexes (MinHas… | 90 | 2969 | stable |
| chDB chDB is an in-process SQL OLAP engine powered by ClickHouse, embeddable in Python (plus Go, Rust, Node.js, and Bun bindings) without runnin… | 97 | 2916 | active |
| JuliaLang/IJulia.jl IJulia is a Jupyter kernel that lets you run the Julia language inside Jupyter Notebook, JupyterLab, and nteract. It combines Julia's compu… | 87 | 2908 | active |
| Roo Roo is a Ruby library that provides read access to common spreadsheet formats including xlsx, xlsm, ods, and CSV, with extensions for xls a… | 66 | 2877 | stable |
| arximboldi/immer Immer is a C++ library of persistent and immutable data structures such as vectors, maps, and sets built on RRB-trees and HAMTs. It enables… | 73 | 2874 | stable |
| Trusted-AI/AIF360 AI Fairness 360 is an open-source Python and R library from IBM Research providing fairness metrics, explanations, and bias mitigation algo… | 58 | 2872 | active |
| MyTT MyTT is a lightweight single-file Python library that implements common stock market technical indicators (MACD, RSI, BOLL, ATR, KDJ, CCI, … | 68 | 2863 | active |
| PythonOT/POT POT is an open-source Python library providing a large set of differentiable solvers for optimal transport problems, including exact and re… | 85 | 2846 | stable |
| datachain-ai/datachain DataChain is a Python library that turns unstructured files in S3, GCS, and Azure into typed, versioned datasets queryable at warehouse spe… | 87 | 2827 | active |
| facebook/Ax Ax is a Python platform for adaptive experimentation that uses machine learning (Bayesian and bandit optimization via BoTorch) to efficient… | 93 | 2826 | active |
| OpenDCAI/DataFlex DataFlex is a data-centric training framework built on LLaMA-Factory that dynamically schedules LLM training data during optimization. It p… | 63 | 2824 | active |
| nutonomy/nuscenes-devkit The official Python devkit for the nuScenes dataset, a large-scale autonomous driving dataset from Motional. It provides dataset loading, v… | 62 | 2807 | stable |
| dgunning/edgartools EdgarTools is a Python library for accessing and parsing SEC EDGAR filings as structured, typed Python objects. It provides a clean API for… | 95 | 2804 | active |
| satijalab/seurat Seurat is an R toolkit for single-cell genomics developed by the Satija Lab, providing a complete pipeline for analyzing single-cell RNA-se… | 88 | 2803 | stable |
| Stan Stan is a C++ probabilistic programming library for full Bayesian inference via NUTS/Hamiltonian Monte Carlo, approximate inference via ADV… | 88 | 2774 | stable |
| dfinke/ImportExcel A PowerShell module for importing and exporting Excel spreadsheets without requiring Excel to be installed. It supports creating tables, pi… | 63 | 2748 | active |
| prinsss/twitter-web-exporter A UserScript (for Tampermonkey/Violentmonkey) that exports tweets, bookmarks, lists, followers, search results, and media from the Twitter/… | 86 | 2721 | active |
| mljs/ml ml.js is an umbrella library bundling the mljs organization's machine learning tools for JavaScript, including clustering, classification, … | 23 | 2719 | active |
| secretflow/secretflow SecretFlow is a unified Python framework for privacy-preserving data analysis and machine learning. It layers cryptographic devices (MPC, H… | 62 | 2713 | active |
| refraction-ray/xalpha xalpha is a Python library for full-lifecycle management of fund and stock investments, including fetching fund/stock net values and market… | 77 | 2708 | active |
| pmorissette/ffn ffn is a Python library of financial functions for quantitative finance, built on Pandas, NumPy, and SciPy. It provides utilities for perfo… | 92 | 2679 | active |
| Colour Colour is an open-source Python library providing a comprehensive collection of colour science algorithms and datasets, including colour sp… | 71 | 2663 | active |
| sfu-db/connector-x ConnectorX is a Rust-based library with Python bindings that loads data from databases into DataFrames (pandas, Arrow, Polars) as fast and … | 89 | 2659 | active |
| jmcarpenter2/swifter Swifter is a Python library that speeds up pandas apply operations by automatically choosing the fastest execution strategy, whether vector… | 32 | 2630 | active |
| spotify/scio Scio is a Scala API for Apache Beam and Google Cloud Dataflow, inspired by Apache Spark and Scalding. It provides a unified batch and strea… | 96 | 2629 | active |
| CamDavidsonPilon/lifelines lifelines is a pure Python library for survival analysis, including Kaplan-Meier and Nelson-Aalen estimators and Cox regression models. It … | 71 | 2613 | stable |
| apache/hamilton Apache Hamilton is a lightweight Python library for defining directed acyclic graphs (DAGs) of data transformations as plain, testable Pyth… | 89 | 2603 | active |
| Malloy Malloy is an open-source semantic modeling and query language that compiles to SQL and runs on existing database engines like BigQuery, Sno… | 95 | 2599 | active |
| Google Colaboratory The official Python libraries shipped inside Google Colaboratory, Google's free hosted Jupyter notebook environment for machine learning ed… | 77 | 2591 | active |
| huohuoer/wechat-cli A command-line tool that queries local WeChat data including chat history, contacts, sessions, and favorites, with on-the-fly SQLCipher dec… | 45 | 2590 | active |
| scverse/scanpy Scanpy is a scalable Python toolkit for analyzing single-cell gene expression data, built alongside the anndata data structure. It provides… | 92 | 2574 | stable |
| ArcticDB ArcticDB is a high-performance DataFrame database for time series and tick data, developed at Man Group for quantitative data science. It s… | 96 | 2552 | active |
| pydata/numexpr NumExpr is a fast numerical expression evaluator for NumPy arrays that compiles expressions like '3*a+4*b' into op-codes executed by an int… | 93 | 2542 | stable |
| scikit-learn-contrib/category_encoders A scikit-learn-contrib library providing a collection of sklearn-compatible transformers for encoding categorical variables into numeric fo… | 91 | 2506 | active |
| ta4j ta4j is an open-source Java library for technical analysis of financial time series. It provides a typed, composable model of bars, indicat… | 99 | 2501 | active |
| EntilZha/PyFunctional PyFunctional is a Python library for creating data pipelines using chained functional operators like map, filter, and reduce. Its API is in… | 24 | 2486 | stable |
| 24mlight/A_Share_investment_Agent A Python-based multi-agent AI investment analysis system for China's A-share market that uses LLMs (Gemini/OpenAI-compatible) with bull/bea… | 56 | 2482 | active |
| Lightning-AI/torchmetrics TorchMetrics is a PyTorch-native library of machine learning metrics that work in distributed and scalable training pipelines. It provides … | 87 | 2477 | stable |
| skfolio/skfolio skfolio is a Python library for portfolio optimization, factor model construction, and risk management built on top of scikit-learn. It pro… | 88 | 2446 | active |
| Yomguithereal/mnemonist Mnemonist is a curated collection of data structures for JavaScript and TypeScript, including classics like heaps, tries, and queues as wel… | 89 | 2434 | stable |
| Statistical Rethinking Course An R package accompanying McElreath's Statistical Rethinking book and course on Bayesian data analysis. It provides tools for quadratic app… | 58 | 2427 | active |
| apache/sedona Apache Sedona is a cluster computing framework for processing large-scale geospatial data across Spark, Flink, and Snowflake. It provides S… | 88 | 2422 | active |
| moj-analytical-services/splink Splink is a Python library for fast, scalable probabilistic record linkage and entity resolution, based on the Fellegi-Sunter model with un… | 91 | 2421 | active |
| QuantEcon/QuantEcon.py QuantEcon.py is an open-source Python library for quantitative economics, providing routines for dynamic programming, Markov chain analysis… | 98 | 2405 | active |
| PyWavelets/pywt PyWavelets is an open-source Python library for wavelet transforms, offering discrete, stationary, wavelet packet, and continuous wavelet t… | 84 | 2402 | stable |
| akfamily/akquant AKQuant is a high-performance quantitative research and backtesting framework with a Rust core engine and Python interface for strategy dev… | 76 | 2392 | active |
| sjwhitworth/golearn GoLearn is a 'batteries included' machine learning library for Go with a scikit-learn-style Fit/Predict interface. It provides data loading… | 32 | 9436 | maintenance |
| Apache Ossie Apache Ossie (incubating, formerly Open Semantic Interchange) is a vendor-neutral JSON/YAML specification for exchanging semantic metadata—… | 61 | 2372 | active |
| neuropsychology/NeuroKit NeuroKit2 is a Python library for neurophysiological and biosignal processing, offering easy access to advanced routines for signals like E… | 76 | 2366 | active |
| Countries A Ruby gem providing country objects with data from ISO 3166 (countries and subdivisions), ISO 4217 (currencies), and E.164 (phone numbers)… | 78 | 2364 | active |
| Scattertext A Python library for finding and visualizing distinguishing terms across document categories as interactive HTML scatter plots. It integrat… | 60 | 2344 | active |
| dataabc/weibo-search A Python/Scrapy-based crawler that continuously fetches Weibo keyword and hashtag search results, including full post metadata, images, and… | 67 | 2328 | active |
| ufoym/imbalanced-dataset-sampler A PyTorch dataset sampler (ImbalancedDatasetSampler, pip package torchsampler) that rebalances class distributions during training by overs… | 60 | 2326 | stable |
| chezou/tabula-py tabula-py is a Python wrapper around tabula-java that extracts tables from PDF files into pandas DataFrames. It can also convert PDFs direc… | 23 | 2317 | stable |
| twitter/algebird Algebird is a Scala library providing abstract algebra typeclasses (Monoids, Groups, Rings) for building composable aggregation systems. It… | 43 | 2296 | stable |
| fairlearn/fairlearn Fairlearn is a Python package for assessing and mitigating fairness issues in machine learning models. It provides fairness metrics for eva… | 91 | 2293 | active |
| mootdx/mootdx A Python library that wraps Tongdaxin (TDX) financial data access, providing simple interfaces for reading offline TDX data files and fetch… | 23 | 2293 | active |
| feature-engine/feature_engine Feature-engine is a Python library for feature engineering and feature selection with transformers that follow scikit-learn's fit/transform… | 82 | 2290 | stable |
| benedekrozemberczki/karateclub Karate Club is a Python library of unsupervised machine learning algorithms for graph-structured data, built as an extension of NetworkX. I… | 23 | 2290 | stable |
| winpython/winpython WinPython is a free, portable Python distribution for Windows that bundles Python with the scientific stack (Spyder, JupyterLab, NumPy, etc… | 93 | 2287 | active |
| MarquezProject/marquez Marquez is an open-source metadata service for collecting, aggregating, and visualizing a data ecosystem's metadata. It serves as the refer… | 66 | 2282 | active |
| axiaoxin-com/investool InvesTool is a Go-based personal investment analysis tool that automates fundamental stock screening, financial report analysis, and mutual… | 30 | 2279 | active |
| mampfes/hacs_waste_collection_schedule A Home Assistant custom integration that fetches waste collection schedules from many service providers, ICS/iCal files, or user-defined da… | 98 | 2271 | active |
| TuringLang/Turing.jl Turing.jl is a probabilistic programming library in Julia for Bayesian inference. Models are defined with an @model macro resembling mathem… | 93 | 2258 | active |
| h5py/h5py h5py is a Pythonic wrapper around the HDF5 binary data format, built on a Cython binding of the HDF5 C API. It lets you store and manipulat… | 79 | 2257 | stable |
| ricklamers/gridstudio Grid studio is a web-based spreadsheet application with full integration of the Python runtime, backed by a Go spreadsheet engine. It provi… | 10 | 8808 | maintenance |
| hhursev/recipe-scrapers A Python library for extracting structured recipe data (title, ingredients, instructions, cooking times, images, nutrients) from cooking we… | 96 | 2247 | active |
| rapidsai/cugraph cuGraph is NVIDIA's RAPIDS collection of GPU-accelerated graph analytics libraries, offering Python, C, and C++ APIs for building graphs an… | 90 | 2237 | active |
| 京墨 Jingmo (京墨) is an open-source Android app for reading Chinese cultural content, including classical poetry, famous quotes, characters, idio… | 79 | 2222 | active |
| BIMK/PlatEMO PlatEMO is a MATLAB-based platform for evolutionary multi-objective optimization developed by BIMK at Anhui University. It provides 300+ op… | 84 | 2207 | active |
| IndrajeetPatil/ggstatsplot An R extension package for ggplot2 that embeds results of statistical tests (p-values, effect sizes, Bayes factors, confidence intervals) d… | 95 | 2206 | stable |
| Vaex Vaex is a high-performance Python DataFrame library for lazy, out-of-core processing of large tabular datasets, using memory mapping and ze… | 53 | 8512 | maintenance |
| pretzelai/pretzelai Pretzel is an open-source fork of Jupyter Notebooks that adds AI code generation, inline tab completion, sidebar chat, and error fixing whi… | 16 | 2186 | active |
| tdunning/t-digest A Java library implementing the t-digest data structure for accurate online accumulation of rank-based statistics such as quantiles and tri… | 32 | 2173 | stable |
| fugue-project/fugue Fugue is a Python library providing a unified interface for distributed computing, letting users run Python, Pandas, Polars, and SQL code o… | 76 | 2167 | active |
| php-ds A PHP extension (PECL package 'ds') providing specialized native data structures like Seq, Map, Set, Heap, and Pair as efficient alternativ… | 88 | 2149 | active |
| cuemacro/findatapy findatapy is a Python library providing a unified high-level API for downloading market data from sources like Bloomberg, Refinitiv Eikon, … | 76 | 2128 | active |
| BurntSushi/fst A Rust library implementing ordered sets and maps using finite state transducers, enabling compact storage of billions of string keys with … | 32 | 2121 | stable |
| deepcharles/ruptures ruptures is a Python library for offline change point detection in non-stationary signals. It provides exact and approximate detection algo… | 67 | 2096 | active |
| joshyattridge/smart-money-concepts A Python library implementing ICT (Inner Circle Trader) smart money concepts as technical indicators for algorithmic trading. It computes i… | 60 | 2093 | active |
| probberechts/soccerdata A Python library of scrapers that collect soccer data from popular websites like FBref, ESPN, WhoScored, Sofascore, SoFIFA, Understat, Club… | 89 | 2088 | active |
| uber/orbit Orbit is a Python package for Bayesian time series forecasting and inference with an initialize-fit-predict interface. It uses probabilisti… | 77 | 2079 | stable |