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 |
|---|---|---|---|
| WenjieDu/PyPOTS PyPOTS is a Python toolbox for machine learning and data mining on partially-observed time series with missing values. It integrates 50+ st… | 89 | 2072 | active |
| EPPlusSoftware/EPPlus EPPlus is a .NET library for creating, reading, and modifying Office Open XML Excel workbooks (xlsx/xlsm) entirely in managed code, with a … | 98 | 2040 | active |
| pykeen/pykeen PyKEEN is a Python library for training and evaluating multimodal knowledge graph embedding models built on PyTorch. It provides a high-lev… | 69 | 2039 | active |
| ppwwyyxx/wechat-dump A Python-based tool that extracts and parses WeChat message history from a rooted Android phone, decoding the local message database and me… | 50 | 2015 | active |
| uncertainty-toolbox/uncertainty-toolbox A Python library for predictive uncertainty quantification, providing metrics, visualizations, and recalibration procedures for regression … | 23 | 2015 | active |
| igraph igraph is a C library for complex network analysis and graph theory, emphasizing efficiency, portability, and ease of use. It offers bindin… | 76 | 2012 | stable |
| broadinstitute/gatk GATK (Genome Analysis Toolkit) is the Broad Institute's industry-standard toolkit for analyzing high-throughput DNA and RNA sequencing data… | 84 | 2003 | active |
| materialsproject/pymatgen Pymatgen (Python Materials Genomics) is a robust open-source Python library for materials analysis, defining core classes for crystal struc… | 99 | 1997 | stable |
| featureform/featureform Featureform is a virtual feature store that sits atop your existing data infrastructure and orchestrates it to define, manage, and serve ML… | 32 | 1991 | active |
| Hyperopt Hyperopt is a Python library for distributed asynchronous hyperparameter optimization over search spaces with real-valued, discrete, and co… | 84 | 7595 | maintenance |
| fluid-cloudnative/fluid Fluid is a Kubernetes-native distributed dataset orchestrator and accelerator for data-intensive applications such as big data and AI workl… | 77 | 1986 | active |
| aipoch/medical-research-skills A curated library of 550+ SKILL.md-compatible agent skills for medical and biomedical research, covering evidence insights, protocol design… | 70 | 1971 | active |
| Tabula Tabula is a local web application for extracting data tables from text-based PDF files into CSV, Excel, or JSON. It is powered by the tabul… | 24 | 7488 | maintenance |
| MLJ MLJ.jl is a machine learning framework for Julia providing a common interface to over 200 models, with meta-algorithms for model selection,… | 91 | 1946 | stable |
| ClosureTree/closure_tree A Ruby gem that lets ActiveRecord models act as nodes in a tree data structure using the closure table pattern. It provides highly efficien… | 95 | 1944 | active |
| tkfy920/qstock qstock is a Python library for personal quantitative investment research, providing modules for fetching financial market data (from Eastmo… | 34 | 1944 | active |
| c2g-dev/city2graph City2Graph is a Python library that converts geospatial data such as buildings, streets, GTFS transit feeds, and origin-destination matrice… | 84 | 1940 | active |
| raphaelvallat/pingouin Pingouin is an open-source Python 3 statistical package built on Pandas and NumPy that provides simple yet exhaustive statistical tests. It… | 82 | 1931 | active |
| geotools/geotools GeoTools is an open source Java library providing standards-compliant tools for working with geospatial data, implementing Open Geospatial … | 96 | 1929 | stable |
| GPflow/GPflow GPflow is a Python library for building Gaussian process models on top of TensorFlow 2 and TensorFlow Probability. It implements modern Gau… | 95 | 1921 | active |
| dynamicslab/pysindy PySINDy is a Python library for discovering governing equations of dynamical systems from measurement data using the Sparse Identification … | 67 | 1913 | active |
| visual-layer/fastdup fastdup is a free Python tool for rapidly analyzing image and video datasets to surface duplicates, outliers, broken, dark, bright, blurry,… | 64 | 1911 | active |
| diffgram/diffgram Diffgram is a self-hosted AI datastore for managing schemas, BLOBs, and predictions, with built-in human supervision (data labeling), data … | 59 | 1911 | active |
| Path of Building An offline build planner for Path of Exile 2 that calculates offence and defence stats, plans passive skill trees, skills, and items. It is… | 83 | 1895 | active |
| ARC-MX/sgcc_electricity_new A Home Assistant integration (deployed via Docker) that scrapes China State Grid (SGCC) accounts to fetch electricity billing and usage dat… | 83 | 1892 | active |
| trevorstephens/gplearn gplearn is a Python library implementing genetic programming with a scikit-learn compatible API, focused on symbolic regression. It provide… | 69 | 1890 | stable |
| stanfordmlgroup/ngboost NGBoost is a Python library implementing Natural Gradient Boosting for probabilistic prediction, built on top of scikit-learn. It outputs f… | 86 | 1889 | active |
| johannfaouzi/pyts pyts is a Python package for time series classification that provides preprocessing, transformation, and utility tools along with implement… | 88 | 1879 | stable |
| Galaxy Galaxy is an open-source, web-based platform for accessible, reproducible, and transparent data-intensive scientific research, primarily in… | 92 | 1869 | stable |
| CausalImpact CausalImpact is an R package for estimating the causal effect of a designed intervention on a time series using Bayesian structural time-se… | 62 | 1862 | stable |
| Indicator Indicator is a Go library providing 80+ technical analysis indicators, configurable trading strategies, and a backtesting framework with re… | 96 | 1859 | active |
| ArviZ ArviZ is a Python package for exploratory analysis of Bayesian models, providing posterior analysis, diagnostics, model comparison, plottin… | 90 | 1858 | active |
| linkedin/greykite Greykite is a Python time series forecasting library from LinkedIn built around its Silverkite algorithm, with support for trend, seasonali… | 23 | 1856 | active |
| uname-yang/pysnowball A Python client library for the Xueqiu (Snowball) stock data API, covering real-time quotes, quote details, cash flow, and other financial … | 46 | 1854 | active |
| rust-bio/rust-bio Rust-Bio is a Rust library providing implementations of algorithms and data structures useful for bioinformatics, such as sequence alignmen… | 88 | 1840 | stable |
| JuliaData/DataFrames.jl DataFrames.jl is the core Julia package for working with in-memory tabular data, providing a DataFrame type similar to pandas in Python or … | 86 | 1840 | stable |
| MetricFlow MetricFlow is a Python semantic layer library from dbt Labs that lets you define, build, and maintain business metrics in code. It compiles… | 97 | 1829 | active |
| microsoft/CDM Microsoft's Common Data Model (CDM) is a standard, extensible collection of schemas (entities, attributes, relationships) representing busi… | 32 | 1825 | active |
| camelot-dev/excalibur Excalibur is a self-hosted web interface for extracting tabular data from text-based PDFs, built on top of the Camelot PDF table extraction… | 68 | 1821 | active |
| avhz/RustQuant RustQuant is a Rust library for quantitative finance, offering modules for option pricing, stochastic processes, autodiff, statistics, and … | 74 | 1819 | active |
| zi-yue-1129/DATAGEN DATAGEN is an AI-powered multi-agent research and data analysis platform built with LangChain, LangGraph, and OpenAI GPT models. It automat… | 68 | 1810 | active |
| jstat/jstat jStat is a JavaScript library providing native implementations of statistical functions, including many probability distributions (weibull,… | 60 | 1805 | stable |
| tidyverse/tidyverse The tidyverse package is an R metapackage that installs and loads the core tidyverse packages (ggplot2, dplyr, tidyr, readr, purrr, tibble,… | 31 | 1801 | stable |
| lehaifeng/T-GCN A collection of research source code implementing Temporal Graph Convolutional Networks (T-GCN) and related variants for urban traffic flow… | 46 | 1787 | active |
| skyfielders/python-skyfield Skyfield is a pure-Python astronomy library that computes high-precision, research-grade positions for planets, moons, and Earth satellites… | 76 | 1775 | stable |
| brainflow-dev/brainflow BrainFlow is a C/C++ core library with bindings for nine languages that provides a uniform SDK for acquiring, parsing, and analyzing data f… | 94 | 1769 | active |
| lyra81604/zhengxi-views A traceable AI agent skill packaging the complete public statements of E Fund fund manager Zheng Xi (2012–2026 quarterly reports, notes, me… | 68 | 1765 | active |
| rstudio/reticulate reticulate is an R package that embeds a Python session inside an R session, enabling seamless interoperability between the two languages. … | 86 | 1761 | stable |
| lit26/finvizfinance A Python library that scrapes and downloads financial data from the FinViz website, returning stock fundamentals, technicals, charts, news,… | 85 | 1753 | active |
| emilwidlund/nodl Nodl is a TypeScript framework for building computational node graphs, built on RxJS for reactive data flow. It includes a core package for… | 32 | 1748 | active |
| kyleskom/NBA-Machine-Learning-Sports-Betting A Python application that predicts NBA game winners and totals (over/under) using XGBoost and neural network models trained on historical t… | 78 | 1747 | active |
| facebookresearch/Kats Kats is a Python toolkit from Facebook's Infrastructure Data Science team for time series analysis, covering statistics, anomaly and change… | 66 | 6497 | maintenance |
| alkaline-ml/pmdarima pmdarima is a Python statistical library that brings R's auto.arima functionality to Python, wrapping statsmodels ARIMA/SARIMAX models behi… | 81 | 1738 | active |
| jldbc/pybaseball pybaseball is a Python package that scrapes and retrieves current and historical baseball statistics from sources like MLB Statcast (Baseba… | 46 | 1735 | active |
| simonlin1212/global-stock-data A self-contained Python-based Skill file that gives AI coding assistants (Claude Code, Codex, etc.) direct access to US stock market data f… | 81 | 1732 | active |
| jakobrunge/tigramite Tigramite is a Python package for causal inference on time series data, providing causal discovery methods such as PCMCI, PCMCIplus, LPCMCI… | 47 | 1731 | active |
| quantopian/pyfolio Pyfolio is a Python library for performance and risk analysis of financial portfolios, centered on 'tear sheets' of plots that summarize a … | 23 | 6425 | maintenance |
| narwhals-dev/narwhals Narwhals is a lightweight, zero-dependency Python compatibility layer that lets code written against a subset of the Polars API run on pand… | 86 | 1722 | active |
| cocodataset/cocoapi Official API for the COCO (Common Objects in Context) dataset, providing Matlab, Python, and Lua interfaces to load, parse, and visualize C… | 32 | 6387 | maintenance |
| Akkudoktor-EOS/EOS AkkudoktorEOS is a self-hosted Python application that simulates and optimizes home energy systems, generating optimized plans for photovol… | 77 | 1699 | active |
| scvi-tools scvi-tools is a Python library for deep probabilistic modeling and analysis of single-cell and spatial omics data, built on PyTorch, PyTorc… | 92 | 1697 | stable |
| TA-Lib TA-Lib is a C/C++ library of 200+ battle-tested technical analysis functions (indicators like ADX, MACD, RSI, Bollinger Bands, plus candles… | 98 | 1696 | active |
| tensorly/tensorly TensorLy is a Python library for tensor learning, providing tensor decomposition, tensor algebra, and tensor regression with a simple API. … | 64 | 1693 | stable |
| py-why/causal-learn causal-learn is a Python library for causal discovery, implementing classical and state-of-the-art algorithms to recover causal structure f… | 87 | 1689 | active |
| reata/sqllineage SQLLineage is a Python library and CLI tool that analyzes SQL statements to extract source and target table lineage without requiring users… | 88 | 1677 | active |
| Multiwoven/multiwoven Multiwoven is an open-source Reverse ETL and data activation platform that syncs data from warehouses like Snowflake, BigQuery, Redshift, a… | 88 | 1675 | active |
| PRML/PRMLT A self-contained MATLAB toolbox implementing the machine learning algorithms from Bishop's textbook 'Pattern Recognition and Machine Learni… | 23 | 6201 | maintenance |
| pvlib/pvlib-python pvlib-python is a community-developed Python toolbox providing documented functions and classes for simulating the performance of photovolt… | 87 | 1672 | stable |
| meyda/meyda Meyda is a JavaScript audio feature extraction library that computes standard signal features like RMS, spectral centroid, and spectral fla… | 23 | 1667 | stable |
| mortada/fredapi fredapi is a Python wrapper around the Federal Reserve Bank of St. Louis FRED and ALFRED web services for fetching economic data. It return… | 48 | 1658 | active |
| tableau/TabPy TabPy is the Tableau Python Server, an Analytics Extensions implementation that lets Tableau users execute Python scripts and saved functio… | 92 | 1654 | active |
| skrub-data/skrub skrub is a Python library that facilitates machine learning with dataframes, providing preprocessing, encoding, and wrangling tools for tab… | 92 | 1653 | active |
| MDAnalysis/mdanalysis MDAnalysis is an open-source Python library for analyzing molecular dynamics simulations of many-body systems at the molecular scale. It re… | 69 | 1650 | stable |
| discord/sorted_set_nif An Elixir SortedSet data structure library implemented as a Native Implemented Function (NIF) in Rust using the Rustler crate. It provides … | 66 | 1648 | stable |
| tylertreat/BoomFilters A Go library of probabilistic data structures for processing continuous, unbounded data streams, including Stable, Scalable, Counting, and … | 52 | 1647 | stable |
| karlicoss/HPI HPI (Human Programming Interface) is a Python package ('my') that unifies personal data from social networks, reading, health, location, me… | 94 | 1644 | active |
| biuuu/star-rail-warp-export An Electron-based desktop tool that exports Honkai: Star Rail warp (gacha) history by reading the game's logs or using a proxy to obtain th… | 91 | 1642 | active |
| deepentropy/tvscreener An unofficial Python library wrapping TradingView's Screener API to query stocks, crypto, forex, bonds, futures, and coins, returning resul… | 94 | 1636 | active |
| Snorkel Snorkel is a Python library for programmatically building and managing training data using weak supervision, letting users write labeling f… | 65 | 6010 | maintenance |
| scikit-learn-contrib/boruta_py A Python implementation of the Boruta all-relevant feature selection method, built on scikit-learn. It identifies all features carrying pre… | 42 | 1628 | active |
| csinva/imodels A Python package providing scikit-learn-compatible implementations of interpretable machine-learning models such as rule lists, RuleFit, an… | 98 | 1627 | active |
| KEV0143/Adaptive-forecasting-of-electricity-consumption-24-168-720-h-with-load-regime-conditioning An open-source tool for adaptive forecasting of hourly electricity consumption over 24, 168, and 720 hour horizons, using load regime condi… | 56 | 1627 | active |
| JustGlowing/minisom MiniSom is a minimalistic, NumPy-based Python implementation of Self Organizing Maps (SOM), a type of neural network for unsupervised learn… | 79 | 1609 | stable |
| dfm/emcee emcee is a stable, well-tested Python implementation of the affine-invariant ensemble sampler for Markov chain Monte Carlo (MCMC) proposed … | 67 | 1603 | stable |
| capitalone/DataProfiler DataProfiler is a Python library that loads CSV, AVRO, Parquet, JSON, text, or URL data into a pandas-compatible DataFrame and profiles it … | 91 | 1591 | active |
| bashtage/arch A Python library for financial econometrics providing ARCH/GARCH volatility models, unit root tests, cointegration analysis, bootstrapping,… | 69 | 1588 | stable |
| paradigmxyz/cryo cryo is a Rust-based CLI tool (also available as a Python package) that extracts Ethereum/EVM blockchain data into parquet, csv, , or Pytho… | 20 | 1581 | active |
| google/meridian Meridian is Google's open-source marketing mix modeling (MMM) framework built on Bayesian causal inference, letting advertisers run in-hous… | 71 | 1576 | active |
| FinanceData/FinanceDataReader FinanceDataReader is a Python library and CLI tool for reading financial data such as stock listings, stock prices, indexes, exchange rates… | 66 | 1555 | active |
| eatmoreduck/boss-zhipin-scraper A Python CLI scraper for BOSS Zhipin (zhipin.com) that connects to a locally logged-in Chrome via the Chrome DevTools Protocol to call the … | 59 | 1554 | active |
| Legend Legend is an end-to-end data platform from FINOS (originated at Goldman Sachs) covering the full data lifecycle: modeling, curation, queryi… | 77 | 1552 | active |
| zohaibbashir/Google-Maps-Scrapper A Python CLI script built on Playwright that scrapes Google Maps listings to extract business details such as name, address, website, phone… | 62 | 1552 | active |
| nubank/fklearn fklearn is a Python machine learning library from Nubank that applies functional programming principles to build, validate, and deploy mode… | 83 | 1550 | active |
| uwdata/arquero Arquero is a JavaScript library for query processing and transformation of array-backed, column-oriented data tables. It offers a fluent, d… | 41 | 1542 | stable |
| baijiuyang/collision-avoidance2 A computational modeling framework for pedestrian moving-obstacle avoidance behavior, implementing Fajen-style steering and Cohen-style avo… | 69 | 1541 | active |
| skforecast Skforecast is a Python library for time series forecasting that turns any scikit-learn compatible estimator (LightGBM, XGBoost, CatBoost, K… | 92 | 1536 | active |
| microsoft/vscode-jupyter A Visual Studio Code extension that provides Jupyter notebook support, interactive programming, and computing with language kernels, allowi… | 78 | 1536 | active |
| Bumblebee Optimus is a Python library for agile data preparation that provides a unified API over pandas, Dask, cuDF, Dask-cuDF, Vaex, and PySpark. I… | 23 | 1535 | active |
| pysal/pysal PySAL is an open-source Python library for geospatial data science with an emphasis on geospatial vector data, distributed as a meta-packag… | 82 | 1526 | active |
| tidymodels/broom broom is an R package that converts statistical model objects from 100+ modeling packages into tidy tibbles. It provides three verbs—tidy()… | 76 | 1524 | active |