(d, idx)
return new_d
Takes in a dictionary with lists as values, and returns
    a dictionary with lists as values, but containing 
    only the desired index

    NOTE: this is a MUTATING METHOD, returns the POPPED IDX
Takes in a dictionary with lists as values, and returns
    a dictionary with lists as values, but containing 
    only the desired index
Takes in a dictionary with lists as values and returns a dictionary with lists as values but containing only the desired index
def rm_idx_from_dict(d, idx):
    """
    Takes in a dictionary with lists as values, and returns
    a dictionary with lists as values, but containing 
    only the desired index

    NOTE: this is a MUTATING METHOD, returns the POPPED IDX
    """
    assert all(isinstance(v, Iterable) for v in d.values())
    new_d = {}
    for k, v in d.items():
        new_d[k] = [d[k].pop(idx)]
    return new_d
def rm_idx_from_dict ( d , idx ) : assert all ( isinstance ( v , Iterable ) for v in d . values ( ) ) new_d = { } for k , v in d . items ( ) : new_d [ k ] = [ d [ k ] . pop ( idx ) ] return new_d