PDS Peppi

The Peppi Open-Source Python Library provides an intuitive interface for the research community to query and extract data from the Planetary Data System (PDS).

Peppi is powered by the robust PDS web API, which offers consistent access to data products from the Planetary Archive of NASA and other participating agencies. These products are described using the comprehensive PDS4 standard.

Whether you’re a planetary scientist searching for mission data, a student learning about the solar system, or a researcher building data analysis pipelines, Peppi makes it easy to find and access the data you need.

Quick Example

Here’s a simple example to get you started:

import pds.peppi as pep

# Connect to PDS
client = pep.PDSRegistryClient()

# Search for Mars data from Curiosity rover
context = pep.Context()
curiosity = context.INSTRUMENT_HOSTS.search("curiosity")[0]

products = pep.Products(client) \
    .has_target("Mars") \
    .has_instrument_host(curiosity.lid) \
    .observationals()

# View first 5 results
for i, product in enumerate(products):
    print(product.id)
    if i >= 4:
        break

Key Features

  • Simple Search: Use plain language to search for planetary data by target, mission, instrument, time range, and more

  • Fuzzy Matching: Typo-tolerant search helps you find what you need even with imperfect queries

  • Pandas Integration: Easily convert results to DataFrames for analysis

  • Automatic Pagination: Seamlessly handles large result sets across multiple API pages

  • Context Discovery: Browse available targets, missions, and instruments

  • Flexible Filtering: Combine multiple criteria to find exactly what you need

Who is Peppi For?

Scientists and Researchers

Programmatically access PDS data for analysis, build data pipelines, create reproducible research workflows

Students and Educators

Explore planetary data for projects, assignments, and learning about the solar system

Data Engineers

Build applications and tools that integrate PDS data, create data catalogs and discovery systems

Citizen Scientists

Access the same data used by professional researchers for personal projects and exploration

Documentation Structure

Choose your path based on your experience and needs:

New to Peppi?

Start with Getting Started for a gentle introduction and your first search

Want practical examples?

Jump to the Cookbook for ready-to-use recipes you can copy and customize

Need to understand concepts?

Read the User Guide to learn how Peppi works and how to use it effectively

Looking for specific methods?

Check the Library Reference for complete API documentation

Installation

Install Peppi using pip:

pip install pds.peppi

Requires Python 3.13 or newer.

Table of Contents

Community & Support

Additional Resources

Contributing

Recognizing the vast and unpredictable range of scientific use cases, and the rich complexity of the PDS4 standard, Peppi is an evolving project. We invite you to Contribute to its development and help shape its future.