我正在使用python,我想要獲取大型數據庫語料庫的TFIDF表示,我正在使用以下代碼將文檔轉換爲其TFIDF格式。獲取選定的功能名稱TFIDF向量化程序
from sklearn.feature_extraction.text import TfidfVectorizer
tfidf_vectorizer = TfidfVectorizer(
min_df=1, # min count for relevant vocabulary
max_features=4000, # maximum number of features
strip_accents='unicode', # replace all accented unicode char
# by their corresponding ASCII char
analyzer='word', # features made of words
token_pattern=r'\w{1,}', # tokenize only words of 4+ chars
ngram_range=(1, 1), # features made of a single tokens
use_idf=True, # enable inverse-document-frequency reweighting
smooth_idf=True, # prevents zero division for unseen words
sublinear_tf=False)
tfidf_df = tfidf_vectorizer.fit_transform(df['text'])
這裏我傳遞一個參數max_features
。矢量化器將選擇最佳特徵並返回scipy稀疏矩陣。問題是我不知道哪些功能被選中,如何將這些功能名稱映射回我得到的scipy矩陣?基本上對於m
文檔中的n
選定的特徵,我想要一個m x n
矩陣,其中所選特徵作爲列名而不是它們的整數ID。我該如何做到這一點?
'詞彙_'屬性用於向量化器而不是變換矩陣。 –
是的,這是一個錯字。 –