Skip to content

Conversation

@jordanpadams
Copy link
Member

Description

This PR adds 8 advanced Jupyter notebook recipes demonstrating sophisticated usage patterns for the Peppi library. These notebooks complement the recently improved Peppi documentation by providing interactive, executable examples of advanced workflows.

New Notebooks

All notebooks are located in notebooks/peppi-advanced/:

Data Analysis & Comparison

  • Recipe 13: Compare Data Coverage Across Multiple Targets - Programmatically compare data availability across planetary bodies with visualizations
  • Recipe 14: Build a Data Timeline - Analyze temporal patterns, create timelines, identify mission phases
  • Recipe 15: Find Overlapping Observations - Discover multi-instrument campaigns and coordinated observations

Workflows & Reports

  • Recipe 16: Create a Custom Data Report - Generate formatted reports about PDS data availability
  • Recipe 20: Build a Reusable Search Function - Design parameterized, reusable search functions

Specialized Usage

  • Recipe 17: Work with OSIRIS-REx Specialized Products - Use mission-specific product classes (OrexProducts)
  • Recipe 18: Handle Large Result Sets Efficiently - Batch processing and memory-efficient patterns
  • Recipe 19: Fuzzy Search Across Multiple Terms - Demonstrate typo-tolerant search capabilities

Features

Each notebook includes:

  • Clear explanations and context
  • Runnable, tested code examples
  • Data visualizations (where applicable)
  • Key takeaways
  • Suggestions for next steps
  • Links to related resources

Target Audience

These notebooks are designed for:

  • Users comfortable with basic Peppi usage
  • Data scientists and researchers doing sophisticated PDS data analysis
  • Developers building tools on top of Peppi
  • Anyone looking for real-world usage patterns

Testing

All code examples have been tested against Peppi v0.8.0 with the live PDS API.

Documentation

Includes a comprehensive README.md in the peppi-advanced directory with:

  • Overview of all notebooks
  • Prerequisites and installation instructions
  • Links to related Peppi documentation

Related Work

This PR complements:

These notebooks provide interactive versions of the advanced recipes (13-20) from the Peppi cookbook documentation.

Checklist

  • Notebooks created and tested
  • README.md with clear descriptions
  • Code examples run successfully
  • Links to related resources included
  • Follows existing notebook structure/style

Next Steps (Future PRs)

  • Consider adding notebooks for intermediate recipes (7-12)
  • Add notebook output cells with example results
  • Create binder configuration for online execution
  • Add notebook tests to CI/CD
Add 8 Jupyter notebooks demonstrating advanced Peppi usage patterns: Recipe 13: Compare Data Coverage Across Multiple Targets - Query multiple targets programmatically - Aggregate and visualize comparison data Recipe 14: Build a Data Timeline - Temporal metadata extraction and parsing - Timeline visualization by year/month - Identify mission phases and data gaps Recipe 15: Find Overlapping Observations - Temporal window filtering - Multi-instrument campaign discovery - Coordinated observation analysis Recipe 16: Create a Custom Data Report - Programmatic report generation - Reusable report templates - Metadata formatting Recipe 17: Work with OSIRIS-REx Specialized Products - Mission-specific product classes - OrexProducts usage examples - Specialized functionality demonstration Recipe 18: Handle Large Result Sets Efficiently - Field filtering for performance - Batch processing patterns - Memory-efficient iteration Recipe 19: Fuzzy Search Across Multiple Terms - Typo-tolerant search demonstrations - Handling spelling variations - Uncertain name resolution Recipe 20: Build a Reusable Search Function - Parameterized search function design - Optional filter handling - Building custom search libraries All notebooks include: - Clear explanations and context - Runnable code examples - Key takeaways and next steps - Links to related resources Notebooks support Peppi v0.8.0+ Related to NASA-PDS/peppi#113
@jordanpadams jordanpadams requested a review from a team as a code owner October 24, 2025 17:15
@review-notebook-app
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

jordanpadams added a commit to NASA-PDS/peppi that referenced this pull request Oct 24, 2025
Refactored recipes 13-20 in the cookbook to be more concise while pointing users to full interactive Jupyter notebook implementations. Changes: - Added intro explaining link to interactive notebooks - Reduced each recipe to brief overview with key code snippet - Added prominent note boxes linking to corresponding notebooks in NASA-PDS/search-api-notebook repository - Maintains self-contained docs while avoiding content duplication - All tests continue to pass This approach provides users with: - Quick reference in peppi documentation - Links to rich interactive notebook experience with visualizations - Single source of detailed content (notebooks) Related: NASA-PDS/search-api-notebook#85
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants