9848 подписчиков
📃 Генерация отчетов графовой аналитики в формате PDF с помощью Python
Создание отчетов графовой аналитики является важной частью работы многих проектов и бизнес-процессов.
Однако, процесс создания и настройки таких отчетов может быть сложным и требовать больших усилий.
Рассмотрим, как использование языка программирования Python и его библиотек может значительно упростить генерацию отчетов графовой аналитики в формате PDF.
Для работы с PDF в Python есть множество библиотек, самые популярные из них: PyPDF2, ReportLab, FPDF.
Сравнение основных библиотек: в изображении.
По совокупным критериям для дальнейшего разбора мной была выбрана библиотека ReportLab.
Одной из самых популярных библиотек для работы с графами в Python является NetworkX. Она предоставляет широкий набор инструментов для создания и анализа графов. Ее и буду использовать для создания графа и анализа данных.
В посте приведен код, необходимый для воспроизведения. Полный код доступен по ссылке.
Данные сгенерирую с помощью Python.
Пусть будет 500 операций, где будет информация об отправителе, получателе, сумме операции и флаг подозрительности операции.
df_dict = {}
count_operation = 500
for i in range(count_operation):
df_dict[i] = {'reciver' : random.randint(1, count_operation/2),
'sender': random.randint(1, count_operation/2),
'sum_oper': random.randint(1000, 1000000),
'suspisios_transaction': random.randint(0, 1)}
Добавлю 100 переводов, где получателем будет клиент 1, а отправителем- любой другой клиент из основного датасета:
for i in range(100):
df_dict[i] = {'reciver' : 1,
'sender': random.randint(1, count_operation/2),
'sum_oper': random.randint(1000, 1000000),
'suspisios_transaction': random.randint(0, 1)}
df = pd.DataFrame().from_dict(df_dict).T
Получится вот такой датасет:
1 минута
18 октября 2023