Skip to content

onehealth_db.inout module⚓︎

onehealth_db.inout ⚓︎

Functions:

Attributes:

T module-attribute ⚓︎

T = TypeVar('T', bound=Union[float, DataArray])

celsius_file_name module-attribute ⚓︎

celsius_file_name = raw_file_name[:-4] + '_celsius.nc'

data_folder module-attribute ⚓︎

data_folder = Path('data/in/')

data_format module-attribute ⚓︎

data_format = 'netcdf'

dataset module-attribute ⚓︎

dataset = 'reanalysis-era5-land-monthly-means'

ds module-attribute ⚓︎

ds = convert_to_celsius_with_attributes(ds, limited_area='area' in request, inplace=True)

encoding module-attribute ⚓︎

encoding = {var: {'zlib': True, 'complevel': 1, 'dtype': 'float32'}for var in data_vars}

file_name module-attribute ⚓︎

file_name = get_filename(dataset, data_format, request['year'], request['month'], 'area' in request, 'era5_data', request['variable'])

output_celsius_file module-attribute ⚓︎

output_celsius_file = data_folder / celsius_file_name

output_file module-attribute ⚓︎

output_file = data_folder / file_name

raw_file_name module-attribute ⚓︎

raw_file_name = split('.')[0]

request module-attribute ⚓︎

request = {'product_type': ['monthly_averaged_reanalysis'], 'variable': ['2m_temperature', 'total_precipitation'], 'year': ['2024'], 'month': ['01', '02', '03'], 'time': ['00:00'], 'data_format': data_format, 'download_format': 'unarchived'}

adjust_longitude_360_to_180 ⚓︎

adjust_longitude_360_to_180(dataset, inplace=True)

Adjust longitude from 0-360 to -180-180.

Parameters:

  • dataset (Dataset) –

    Dataset with longitude in 0-360 range.

  • inplace (bool, default: True ) –

    If True, modify the original dataset. If False, return a new dataset. Default is True.

Returns:

  • Dataset

    xr.Dataset: Dataset with longitude adjusted to -180-180 range.

convert_360_to_180 ⚓︎

convert_360_to_180(longitude)

Convert longitude from 0-360 to -180-180.

Parameters:

  • longitude (T) –

    Longitude in 0-360 range.

Returns:

  • T ( T ) –

    Longitude in -180-180 range.

convert_to_celsius ⚓︎

convert_to_celsius(temperature_kelvin)

Convert temperature from Kelvin to Celsius.

Parameters:

  • temperature_kelvin (DataArray) –

    Temperature in Kelvin, accessed through t2m variable in the dataset.

Returns:

  • DataArray

    xr.DataArray: Temperature in Celsius.

convert_to_celsius_with_attributes ⚓︎

convert_to_celsius_with_attributes(dataset, limited_area=True, inplace=True)

Convert temperature from Kelvin to Celsius and keep attributes.

Parameters:

  • dataset (Dataset) –

    Dataset containing temperature in Kelvin.

  • limited_area (bool, default: True ) –

    Flag indicating if the dataset is a limited area. Default is True.

  • inplace (bool, default: True ) –

    If True, modify the original dataset. If False, return a new dataset. Default is True.

Returns:

  • Dataset

    xr.Dataset: Dataset with temperature converted to Celsius.

download_data ⚓︎

download_data(output_file, dataset, request)

Download data from Copernicus's CDS using the cdsapi.

Parameters:

  • output_file (Path) –

    The path to the output file where data will be saved.

  • dataset (str) –

    The name of the dataset to download.

  • request (dict) –

    A dictionary containing the request parameters.

get_filename ⚓︎

get_filename(ds_name, data_format, years, months, has_area, base_name='era5_data', variable=['2m_temperature'])

Get file name based on dataset name, base name, years, months and area.

Parameters:

  • ds_name (str) –

    Dataset name.

  • data_format (str) –

    Data format (e.g., "netcdf", "grib").

  • years (list) –

    List of years.

  • months (list) –

    List of months.

  • has_area (bool) –

    Flag indicating if area is included.

  • base_name (str, default: 'era5_data' ) –

    Base name for the file. Default is "era5_data".

  • variable (list, default: ['2m_temperature'] ) –

    List of variables. Default is ["2m_temperature"].

Returns:

  • str ( str ) –

    Generated file name.

save_to_netcdf ⚓︎

save_to_netcdf(data, filename, encoding=None)

Save data to a NetCDF file.

Parameters:

  • data (DataArray) –

    Data to be saved.

  • filename (str) –

    The name of the output NetCDF file.

  • encoding (dict, default: None ) –

    Encoding options for the NetCDF file.