Tom Vo - xCDAT (Xarray Climate Data Analysis Tools) | SciPy 2024

Learn about XCDAT, a Python package combining Xarray with CDAT features for efficient climate data analysis, focusing on intuitive APIs and parallel processing.

Key takeaways
  • XCDAT is a Python package for climate data analysis that combines X-Ray capabilities with features from CDAT (Climate Data Analysis Tools), focusing on routine climate analysis operations

  • Core capabilities include:

    • File I/O for NetCDF, Iris, OpenNAP formats
    • Spatial and temporal averaging
    • Regridding (horizontal and vertical)
    • Climatology calculations
    • Anomaly analysis
    • Bounds handling for robust calculations
    • Parallel processing with Dask integration
  • The package emphasizes:

    • Clean, intuitive APIs
    • Software sustainability
    • Reproducible science
    • CF-compliant metadata handling
    • Interoperability with other scientific Python tools
  • Key design advantages:

    • Single-line operations vs multi-line X-Ray equivalents
    • Automatic metadata interpretation
    • Built-in parallelization
    • Proper chunking for large datasets
    • Weight-based calculations for accurate regional averaging
  • Development approach:

    • Feedback-driven development with climate scientists
    • Open source community focus
    • Funded through Numfocus for long-term stability
    • Part of Pangeo ecosystem
    • Built on modern technology stack
  • Designed for growing challenges:

    • Increasing model resolution
    • Larger dataset sizes
    • Need for efficient parallel processing
    • Cross-dataset comparisons
    • Ensemble analysis