An open data processing pipeline for US energy data
What is PUDL?
The PUDL Project is an open source data processing pipeline that makes US energy data easier to access and use programmatically.
Hundreds of gigabytes of valuable data are published by US government agencies, but it’s often difficult to work with. PUDL takes the original spreadsheets, CSV files, and databases and turns them into a unified resource. This allows users to spend more time on novel analysis and less time on data preparation.
The project is focused on serving researchers, activists, journalists, policy makers, and small businesses that might not otherwise be able to afford access to this data from commercial sources and who may not have the time or expertise to do all the data processing themselves from scratch.
We want to make this data accessible and easy to work with for as wide an audience as possible: anyone from a grassroots youth climate organizers working with Google sheets to university researchers with access to scalable cloud computing resources and everyone in between!
PUDL is comprised of three core components:
Raw Data Archives
PUDL archives all our raw inputs on Zenodo to ensure permanent, versioned access to the data. In the event that an agency changes how they publish data or deletes old files, the data processing pipeline will still have access to the original inputs. Each of the data inputs may have several different versions archived, and all are assigned a unique DOI (digital object identifier) and made available through Zenodo’s REST API. You can read more about the Raw Data Archives in the docs.
The data pipeline (this repo) ingests raw data from the archives, cleans and integrates it, and writes the resulting tables to SQLite and Apache Parquet files, with some acompanying metadata stored as JSON. Each release of the PUDL software contains a set of of DOIs indicating which versions of the raw inputs it processes. This helps ensure that the outputs are replicable. You can read more about our ETL (extract, transform, load) process in the PUDL documentation.
The SQLite, Parquet, and JSON outputs from the data pipeline, sometimes called “PUDL outputs”, are updated each night by an automated build process, and periodically archived so that users can access the data without having to install and run our data processing system. These outputs contain hundreds of tables and comprise a small file-based data warehouse that can be used for a variety of energy system analyses. Learn more about how to access the PUDL data.
What data is available?
PUDL currently integrates data from:
EIA Form 860m: 2023-06 - Source Docs
FERC Form 2: 1996-2022 (raw only) - Source Docs
FERC Form 6: 2000-2022 (raw only) - Source Docs
FERC Form 60: 2006-2022 (raw only) - Source Docs
US Census Demographic Profile 1 Geodatabase: 2010 - Source Docs
Thanks to support from the Alfred P. Sloan Foundation Energy & Environment Program, from 2021 to 2024 we will be cleaning and integrating the following data as well:
How do I access the data?
For details on how to access PUDL data, see the data access documentation. A quick summary:
Kaggle provides easy Jupyter notebook access to the PUDL data, updated weekly: https://www.kaggle.com/datasets/catalystcooperative/pudl-project
Nightly Data Builds push their outputs to the AWS Open Data Registry: https://registry.opendata.aws/catalyst-cooperative-pudl/ See the nightly build docs for direct download links.
The PUDL Development Environment lets you run the PUDL data processing pipeline locally.
Contributing to PUDL
Find PUDL useful? Want to help make it better? There are lots of ways to help!
You can file a bug report, make a feature request, or ask questions in the Github issue tracker.
Feel free to fork the project and make a pull request with new code, better documentation, or example notebooks.
Make a recurring financial contribution to support our work liberating public energy data.
Hire us to do some custom analysis and allow us to integrate the resulting code into PUDL.
In general, our code, data, and other work are permissively licensed for use by anybody, for any purpose, so long as you give us credit for the work we’ve done.
For bug reports, feature requests, and other software or data issues please make a GitHub Issue.
For more general support, questions, or other conversations around the project that might be of interest to others, check out the GitHub Discussions
If you’d like to get occasional updates about the project sign up for our email list.
Want to schedule a time to chat with us one-on-one about your PUDL use case, ideas for improvement, or get some personalized support? Join us for Office Hours
Follow us on Mastodon: @CatalystCoop@mastodon.energy
Follow us on BlueSky: @catalyst.coop
Follow us on Twitter: @CatalystCoop
More info on our website: https://catalyst.coop
Email us if you’d like to hire us to provide customized data extraction and analysis: firstname.lastname@example.org
About Catalyst Cooperative
Catalyst Cooperative is a small group of data wranglers and policy wonks organized as a worker-owned cooperative consultancy. Our goal is a more just, livable, and sustainable world. We integrate public data and perform custom analyses to inform public policy (Hire us!). Our focus is primarily on mitigating climate change and improving electric utility regulation in the United States.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Hashes for catalystcoop.pudl-2024.2.5.tar.gz
Hashes for catalystcoop.pudl-2024.2.5-py3-none-any.whl