Metadata-Version: 2.1
Name: climpy
Version: 0.0.3
Summary: Tools to analyse climate data for machine learning and event analysis
Home-page: https://github.com/ClimAI/climpy
License: BSD-3-Clause
Keywords: climpy,deep-learning,coincidence-analysis
Author: Mohit Anand
Author-email: mohit@climai.earth
Requires-Python: >=3.9,<3.13
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: cartopy (>=0.21.1,<0.22.0)
Requires-Dist: geopandas (>=0.13.2,<0.14.0)
Requires-Dist: rioxarray (>=0.14.1,<0.15.0)
Requires-Dist: scipy (>=1.10.1,<2.0.0)
Requires-Dist: xarray (>=2023.5.0,<2024.0.0)
Project-URL: Repository, https://github.com/ClimAI/climpy
Description-Content-Type: text/markdown

# climpy

<center> <img src="climpy.png" alt="logo" style="width:100px;"/></center> 

Climpy is working to help climate researchers to analyse climate data, write in formats ready to be used with machine learning models and analyse the accuracy of model predictions

https://github.com/climai/climpy/actions/workflows/python-app.yml/badge.svg

The package is divided into three parts
- Transform: The `transform` module transforms by applying different conditions on your dataset. The class diagram below will detail on the application of the module.

```mermaid
---
Transform
---

classDiagram

Hazard <|-- Criterion

class Condition{
    args
    returns_event
    func()
}

class Criterion{
    sequence
    apply_conditions()
    valid_conditions(sequence) bool
}

class Hazard{

    event_locations
    n_events
    apply_conditions()
    valid_conditions()
    get_event(n) Event
    all_events() EventList
}

class DataArray{
    xr.DataArray variables
    xr.DataArray functions()
}

class LinkDataHazard{
    on_events()
    get_values()
}

class Event{
    data
    location
    start_time
    end_time
    
    r
    tau

    set_intensity()
}

class EventList{
    event_list
}

DataArray -- LinkDataHazard
LinkDataHazard -- Hazard
Hazard *-- EventList
EventList *--Event
Condition .. Criterion
Condition .. Hazard
```

- ml_data: The `ml_data` module creates/writes data to be used conveniently for different kinds of machine learning models. The class diagram below will detail on the application of the module.

```mermaid
---
Data ML
---
classDiagram


List *-- DataArray

class X{
    values
    meta
}

class Y{
    values
    meta
}

class MLData{
    X
    Y
    tvt_split()
}


class DataArray{
    xr.DataArray variables
    xr.DataArray functions()
}

class Split

```

- Metrics: The `metrics` module can be applied to observed and simulated variables. This would include exhaustive set of different metrics that can be used on climate related data
