/
azatgimaev
/
python_course
Обзор
Документация
Войти
/
azatgimaev
/
python_course
Код
Запросы
5
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
hw7
homework7/vectorizer.py
38 строк
1 KB
Azat Gimaev
Допуск
19 ноя 2024, 02:49
19 ноя 2024, 02:49
382b017
Код
Авторство
О чём код?
from count_vectorizer import CountVectorizer from transformer import TfidfTransformer class TfidfVectorizer(CountVectorizer): def __init__(self, lowercase=True): ''' Инициализация :param lowercase: Если True, то все слова преобразуются в нижний регистр ''' super().__init__(lowercase) self.transformer = None def fit_transform(self, raw_texts: list) -> list[list]: ''' Находит tfidf для каждого слова в док-тах :param raw_texts: Список документов в виде строк :return: Матрица tfidf для каждого слова ''' matrix = super().fit_transform(raw_texts) self.transformer = TfidfTransformer() return self.transformer.fit_transform(matrix) if __name__ == '__main__': corpus = [ 'Crock Pot Pasta Never boil pasta again', 'Pasta Pomodoro Fresh ingredients Parmesan to taste' ] vectorizer = TfidfVectorizer() tfidf_matrix = vectorizer.fit_transform(corpus) print(vectorizer.get_feature_names()) print(tfidf_matrix)