/
idaria
/
omd
Обзор
Документация
Войти
/
idaria
/
omd
Код
Запросы
6
Задачи
Пакеты
0
Релизы
0
Аналитика
Безопасность
practise_classes
idf_transform.py
25 строк
581 B
daria
Сделала практику по классам
14 ноя 2024, 03:52
14 ноя 2024, 03:52
f4ab8cb
Код
Авторство
О чём код?
from math import log def idf_transform(matrix): docs_count = len(matrix) terms_count = [0] * len(matrix[0]) for row in matrix: for i, val in enumerate(row): if val > 0: terms_count[i] += 1 result = [] for count in terms_count: idf = round(log((docs_count + 1) / (count + 1)) + 1, 1) result.append(idf) return result if __name__ == '__main__': count_matrix = [ [1, 1, 2, 1, 1, 1, 0, 0, 0, 0, 0, 0], [0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1] ] print(idf_transform(count_matrix))