def cast_no_data_value(no_data_value, dtype):
    """Handles casting nodata values to correct type"""
    int_types = ['uint8', 'uint16', 'int16', 'uint32', 'int32']

    if dtype in int_types:
        return int(no_data_value)
    else:
        return float(no_data_value)