我有一行行的简介(文本格式),我想使用tf idf来定义每个单词的权重。代码如下:
def remove_punctuations(text):
for punctuation in string.punctuation:
text = text.replace(punctuation, '')
return text
df["punc_blurb"] = df["blurb"].apply(remove_punctuations)
df = pd.DataFrame(df["punc_blurb"])
vectoriser = TfidfVectorizer()
df["blurb_Vect"] = list(vectoriser.fit_transform(df["punc_blurb"]).toarray())
df_vectoriser = pd.DataFrame(x.toarray(),
columns = vectoriser.get_feature_names())
print(df_vectoriser)
我得到的只是一个庞大的数字列表,我甚至不确定它给我的是TF还是TF-IDF,因为这些常用词(和等)的分数都超过了0
目标是查看下面显示的tf idf列中的权重,我不确定我是否以最有效的方式进行此操作:
如果使用
TfidfVectorizer
,则不需要标点删除程序。它将根据默认的token_pattern
参数自动处理标点:相关问题 更多 >
编程相关推荐