def filter_dataframe(df, column, value):
    """Filter DataFrame for a column and a value or a list of value

    Parameters
    ----------
    df: DataFrame
        DataFrame to filter
    column: str
        column name
    value: list or 1dim value
        values

    Returns
    -------
    DataFrame: filtered DataFrame
    """
    if type(value) == list:
        if len(value) > 1:
            df_filtered = df.loc[df[column].isin(value)].copy()
        else:
            df_filtered = df.loc[df[column] == value[0]].copy()
    else:
        df_filtered = df.loc[df[column] == value].copy()

    return df_filtered