2017-07-06 76 views
0

我正在尝试使用TFIDF从文本文章的标题中获取功能。我做的是以下情况:SciKit-Learn:TfidfVectorizer故障

from sklearn.feature_extraction.text import TfidfVectorizer 
corpus_title = result_df['_title'].tolist() 
tfidf_transformer_title = TfidfVectorizer(min_df = 1, ngram_range = (1,1), use_idf = True, stop_words='english') 
tfidf_df_title = tfidf_transformer_title.fit_transform(corpus_title) 
tfidf_df_title 

不过,我在这条线得到一个错误:

----> 4 tfidf_df_title = tfidf_transformer_title.fit_transform(corpus_title) 

的错误是:

205 
    206   if self.lowercase: 
--> 207    return lambda x: strip_accents(x.lower()) 
    208   else: 
    209    return strip_accents 

AttributeError: 'NoneType' object has no attribute 'lower' 

我不知道它是如何可能得到这个错误。我检查了文档,它看上去像TfidfVectorizer使用UTF-8作为其默认编码。

任何想法如何解决?

谢谢!

+0

你的阴茎似乎有一些有问题的项目。 –

+0

@cᴏʟᴅsᴘᴇᴇᴅ是否有跳过这些条目的方法? – bclayman

+0

不熟悉熊猫,但您可以仔细查看导致问题的数据,然后使用布尔索引将其过滤掉。 –

回答

1

试试这个:

tfidf_transformer_title = TfidfVectorizer(min_df = 1,lowercase = False, ngram_range = (1,1), use_idf = True, stop_words='english')