从pickle使用`dataframemapper`类时出错

时间:2018-02-26 10:57:45

标签: python pickle sklearn-pandas

我正在尝试保存DataFramMapper对象以用于模型的新数据。

 mapper = DataFrameMapper([
        (['price', 'Argentina', 'Canada', 'Australia', 'barcat_numeric'], None),
        ('TTL',CountVectorizer( ngram_range=(1, 2))),
        ('BARCAT', CountVectorizer( ngram_range=(1, 2)))
    ])
    with open('company_dill.pkl', 'wb') as f:
        dill.dump(mapper, f)

当我读到数据时:

with open('company_dill.pkl', 'rb') as f:
mapper_v = dill.load(f)
print(type(mapper_v))

输出是:
     但是当我尝试使用它时,我得到:

---> 20     X = mapper.transform(data_frame)
 21     return X

C:\Users\eliav\Anaconda3\lib\site-
packages\sklearn_pandas\dataframe_mapper.py in transform(self, X)
    269         extracted = []
    270         self.transformed_names_ = []
--> 271         for columns, transformers, options in self.built_features:
    272             input_df = options.get('input_df', self.input_df)
    273             # columns could be a string or list of

TypeError: 'NoneType' object is not iterable

当我不保存到pickle它工作正常,同时使用pickledill

0 个答案:

没有答案