<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _save_results(self, output_dir, label, results, ngrams, type_label):
 """Saves `results` filtered by `label` and `ngram` to `output_dir`. :param output_dir: directory to save results to :type output_dir: `str` :param label: catalogue label of results, used in saved filename :type label: `str` :param results: results to filter and save :type results: `pandas.DataFrame` :param ngrams: n-grams to save from results :type ngrams: `list` of `str` :param type_label: name of type of results, used in saved filename :type type_label: `str` """

        path = os.path.join(output_dir, '{}-{}.csv'.format(label, type_label))
        results[results[constants.NGRAM_FIELDNAME].isin(
            ngrams)].to_csv(path, encoding='utf-8', float_format='%d',
                            index=False)