def _get_minimum_cols(nrows, col_limits, families, family_counts):
    """ If :code:`col_limits` has a tuple lower limit then sample columns of the
    correct class from :code:`families` as needed to satisfy this bound. """
    cols, metadata = [], []
    for family, min_limit in zip(families, col_limits[0]):
        for _ in range(min_limit):
            meta = family.make_instance()
            cols.append(meta.sample(nrows))
            metadata.append(meta)
            family_counts[family.name] += 1
    return cols, metadata, family_counts
