向量化 Python 中的单词组合

Vectorizer the combination of words in Python

我有一个包含医学文本数据的数据集,我对它们应用了 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"、"headache"、"nausea" 等等。如何在 TfidfVectorizer 的输出中获取单词组合,例如:"severe pain"、"cluster headache"、"nausea vomiting"。谢谢

使用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))