Source code for emod_api.utils

from collections.abc import Iterable


[docs]def check_dimensionality(data, dimensionality: int) -> bool: """ Returns True/False: is the provided data a matrix of the specified dimensionality? Args: data: An object to check the dimensionality of dimensionality: The expected dimensionality Returns: True if data dimensionality is as expected, False if not. """ ret = True if dimensionality == 0: if isinstance(data, Iterable): ret = False # expected to NOT be iterable still, but it is else: if isinstance(data, Iterable): for item in data: if check_dimensionality(data=item, dimensionality=dimensionality - 1) is False: ret = False break else: ret = False # expected to be iterable still, but it isn't return ret