def select_range(df, window, range_column="t", include_end=True):
    """
    Select a range of data for multiple Pandas DataFrames at once.
    It was designed for using it with the output of the bout methods.

    Parameters
    ----------
    df : pandas.DataFrame/list
        The (list of) DataFrame to use
    window : list
        A 2-list containing the minimum and maximum value of the range to select
    range_column : str
        Optional column in the DataFrame to use for the range (usually timestamp)
    include_end : bool
        Optional whether to include the max value in the range

    Returns
    -------
    list(pandas.DataFrame)
        A list of DataFrames selections
    """

    if not isinstance(df, list):
        df = [df]

    return [
        dff[(dff[range_column] >= window[0]) & (dff[range_column] <= window[1])]
        if include_end
        else dff[(dff[range_column] >= window[0]) & (dff[range_column] < window[1])]
        for dff in df
    ]