我有一个带有医学文本数据的数据集,我在它们上面应用了tf-idf矢量化器并计算了这样的单词的tf idf得分:
import pandas as pd
from sklearn.feature_extraction.text import TfidfVectorizer as tf
vect = tf(min_df=60,stop_words='english')
dtm = vect.fit_transform(df)
l=vect.get_feature_names()
x=pd.DataFrame(dtm.toarray(), columns=vect.get_feature_names())
基本上我的问题是关注 - 当我应用TfidfVectorizer时,它会以不同的词语分割文本,例如:" pain","头痛","恶心"等等。我怎样才能在TfidfVectorizer的输出中得到单词组合:"严重的疼痛","丛集性头痛","恶心呕吐"。感谢
答案 0 :(得分:4)
使用ngram_range参数:
vect = tf(min_df=60, stop_words='english', ngram_range=(1,2))
或(取决于您的目标):
vect = tf(min_df=60, stop_words='english', ngram_range=(2,2))