def magNDx(v, limit=0):
    """Returns magnitude of an nD vector,
    ignoring items if they are not numeric, with 
    an option to limit length of the tuple to a certain 
    length defined by the `limit` argument"""
    if limit > 0:
        return sum(vv**2  for i, vv in enumerate(v)
        if (isinstance(vv, (int, float)) 
            and i < limit))**0.5
    else:
        return sum(vv**2  for i, vv in enumerate(v)
        if (isinstance(vv, (int, float))))**0.5