from loguru import logger
from humanize import naturalsize
import polars as pl
import pandas as pd
import xarray as xr
def get_memory_usage(data):
= type(data)
datatype match datatype:
case pl.DataFrame:
= data.estimated_size()
size case pd.DataFrame:
= data.memory_usage().sum()
size case xr.DataArray:
= data.nbytes
size
f"{naturalsize(size)} ({datatype.__name__})")
logger.info(return size