Skip to content

A collection of useful functions for open goverment data and Cube handling.

Notifications You must be signed in to change notification settings

BLV-OSAV-USAV/cubeUtilities

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cubeUtilities

A collection of useful functions for open goverment data and Cube handling.

Installation

pip install git+https://github.com/BLV-OSAV-USAV/cubeUtilities.git

Usage

import pandas as pd
from cubeUtilities.converter import convert_cube
from cubeUtilities.translator import translate_dataframe_columns

# Example data
df = pd.DataFrame({
    "Serotyp": ["A", "A", "B", "B"],
    "Kanton_ID": ["ZH", "ZH", "BE", "BE"],
    "Season": ["2021", "2022", "2021", "2022"],
    "Genus": ["Cattle", "Cattle", "Pigs", "Pigs"],
    "Value": [10, 15, 12.3, 20],
    "Volume": [100, 150, 200, 300],
    "Animals": [1000, 1000, 2000, 2000]
})

# Conver Cube
cube = convert_cube(
    df,
    dimensions=["Serotyp", "Kanton_ID", "Season", "Genus"],
    measure_cols=["Value","Volume", "Animals"],
    per_subgroup_measures={"Animals": ["Genus"]},
    all_labels={"Serotyp": "ALL", "Kanton_ID": "CHE", "Season": "ALL", "Genus": "All_Genus"},
    round_decimals=2
)

print("Results:")
print(cube.to_string())

print("\n\nKey examples to verify:")
print("Animals for Cattle (any specific combination):", cube[(cube['Genus'] == 'Cattle') & (cube['Serotyp'] != 'ALL')]['Animals'].iloc[0])
print("Animals for 'Serotyp ALL, Genus Cattle' (should be 1000):", cube[(cube['Genus'] == 'Cattle') & (cube['Serotyp'] == 'ALL') & (cube['Kanton_ID'] != 'CHE') & (cube['Season'] != 'ALL')]['Animals'].iloc[0])
print("Animals for 'All_Genus' (should be 3000 = 1000 + 2000):", cube[cube['Genus'] == 'All_Genus']['Animals'].iloc[0])



# Translate Cube
translations = translate_dataframe_columns(
    df=cube,
    service="googletrans",
    source_language="en", 
    target_languages=["de", "en", "fr", "it"]
)

About

A collection of useful functions for open goverment data and Cube handling.

Resources

Stars

Watchers

Forks

Releases

No releases published

Languages