Цель: использовать TFIDF для фрейма данных с одним текстовым столбцом
Я работаю над проблемой подобия вопроса о кворе.
У меня есть следующие проблемы:
- Я передаю фрейм данных размером (198102, 1) в tfidfvectorizer и возвращаю массив размера (1,1). Это столбец со всем текстом в нем.
cq1 =pd.DataFrame(columns=['q1'])
cq1 = pd.DataFrame(X_v_trn['question1'])
print(cq1.shape,type(cq1))
tfidfq1 = TfidfVectorizer()
X_q1 = tfidfq1.fit_transform(cq1)
print(type(X_q1),X_q1.shape,X_q1.toarray())
print(tfidfq1)
OUTPUT
(198102, 1) <class 'pandas.core.frame.DataFrame'>
<class 'scipy.sparse.csr.csr_matrix'> (1, 1) [[1.]]
TfidfVectorizer(analyzer='word', binary=False, decode_error='strict',
dtype=<class 'numpy.float64'>, encoding='utf-8', input='content',
lowercase=True, max_df=1.0, max_features=None, min_df=1,
ngram_range=(1, 1), norm='l2', preprocessor=None, smooth_idf=True,
stop_words=None, strip_accents=None, sublinear_tf=False,
token_pattern='(?u)\\b\\w\\w+\\b', tokenizer=None, use_idf=True,
vocabulary=None)
Фактический вывод, который я получаю - массив (1,1), тогда как я ожидаю разреженную матрицу, имеющую строку 198102