def split_columns_subsets(df):
    """
    Functions used in the documentation to split
    a dataframe by columns into multiple dataframe to
    reduce the scrolling.
    """
    common = [c for c in ['name', 'problem',
                          'scenario', 'optim'] if c in df.columns]
    subsets = []
    subsets.append(
        [c for c in df.columns if 'opset' in c or 'onx_nnodes' == c])
    subsets.append([c for c in df.columns if 'ERROR' in c or 'opset' in c])
    subsets.append([c for c in df.columns if c.startswith(
        'skl_') or c.startswith('onx_') or 'opset' in c])
    subsets.append([c for c in df.columns if 'N=' in c or 'opset' in c])
    subsets = [s for s in subsets if len(s) > 0]
    return common, subsets