def filter_(self, columns, value):
        """ This method filter some of the rows where the 'value'
        is found in each of the 'columns'.

        :param column: list of strings
        :param value: any type

        :returns: filtered dataframe
        :rtype: pandas.DataFrame
        """

        for column in columns:
            if column not in self.data.columns:
                raise ValueError("Column %s not in DataFrame columns: %s" % (column, list(self.data)))

        for column in columns:
            # Filtering on empty data series doesn't make sense at all and also would raise an error
            column_len = len(self.data[column])
            if column_len > 0 and column_len != self.data[column].isnull().sum():
                self.data = self.data[self.data[column] != value]

        return self.data
This method filter some of the rows where the 'value'
        is found in each of the 'columns'.

        :param column: list of strings
        :param value: any type

        :returns: filtered dataframe
        :rtype: pandas.DataFrame