From 0119b425e9ed527447611627fc7d0513e2b8ccc3 Mon Sep 17 00:00:00 2001 From: Avshugan Date: Fri, 3 Apr 2026 22:42:33 +0300 Subject: [PATCH 1/2] Add les07 --- .../sem02/lesson07/images/task1_expected.png | Bin 0 -> 77043 bytes .../sem02/lesson07/images/task2_expected.png | Bin 0 -> 25481 bytes conditions/sem02/lesson07/tasks.md | 50 +++ .../sem02/tests/task5}/test_lesson05_tasks.py | 0 .../tests}/test_data/lesson05/Vj_data.npy | Bin .../tests}/test_data/lesson05/Vs_data.npy | Bin .../tests}/test_data/lesson05/diag_A_data.npy | Bin .../tests}/test_data/lesson05/y_data.npy | Bin solutions/sem02/lesson07/data/medic_data.json | 406 ++++++++++++++++++ solutions/sem02/lesson07/task1.py | 28 ++ solutions/sem02/lesson07/task2.py | 1 + 11 files changed, 485 insertions(+) create mode 100644 conditions/sem02/lesson07/images/task1_expected.png create mode 100644 conditions/sem02/lesson07/images/task2_expected.png create mode 100644 conditions/sem02/lesson07/tasks.md rename {tests => deprecated_tests/sem02/tests/task5}/test_lesson05_tasks.py (100%) rename {tests => deprecated_tests/sem02/tests}/test_data/lesson05/Vj_data.npy (100%) rename {tests => deprecated_tests/sem02/tests}/test_data/lesson05/Vs_data.npy (100%) rename {tests => deprecated_tests/sem02/tests}/test_data/lesson05/diag_A_data.npy (100%) rename {tests => deprecated_tests/sem02/tests}/test_data/lesson05/y_data.npy (100%) create mode 100644 solutions/sem02/lesson07/data/medic_data.json create mode 100644 solutions/sem02/lesson07/task1.py create mode 100644 solutions/sem02/lesson07/task2.py diff --git a/conditions/sem02/lesson07/images/task1_expected.png b/conditions/sem02/lesson07/images/task1_expected.png new file mode 100644 index 0000000000000000000000000000000000000000..b7696dab131a11008b41efff237cfcadf539032b GIT binary patch literal 77043 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 literal 0 HcmV?d00001 diff --git a/conditions/sem02/lesson07/images/task2_expected.png b/conditions/sem02/lesson07/images/task2_expected.png new file mode 100644 index 0000000000000000000000000000000000000000..81b13b82d81ec9225f6dbcec9e9734f7bdcfd17a GIT binary patch literal 25481 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

AF}l!3(Ac8DS* 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 literal 0 HcmV?d00001 diff --git a/conditions/sem02/lesson07/tasks.md b/conditions/sem02/lesson07/tasks.md new file mode 100644 index 00000000..338b703b --- /dev/null +++ b/conditions/sem02/lesson07/tasks.md @@ -0,0 +1,50 @@ +## Задача 1. Распределения на любой вкус + +Реализуйте функцию `visualize_diagrams`, которая позволяет построить диаграмму рассеяния данных и распределения данных вдоль координатных осей. + +Допишите код функции `visualize_diagrams` в файле [task1](../../../solutions/sem02/lesson07/task1.py). + +**Входные данные**: +- `abscissa` - одномерный `np.ndarray` чисел с плавающей точкой - абсциссы визуализируемых точек. +- `ordinates` - одномерный `np.ndarray` чисел с плавающей точкой - ординаты визуализируемых точек. +- `diagram_type` - строка, тип визуализации распределения данных вдоль осей. `diagram_type` должен принимать одно из трех значений: `hist` - в этом случае распределение строится в виде гистограммы, `violin` в этом случае распределение строится в виде скрипичной диаграммы, `box` - в этом случае распределение строится в виде ящика с усами. + +**Сторонние эффекты**: +- После выполнения функции на экране должно отображаться изображение с визуализацией, похожей на визуализацию из последнего примера с семинара (добавьте что-то от себя, например, поменяйте цвет или оформление): +![expected-result](./images/task1_expected.png) +- Если размеры массивов `abscissa` и `ordinates` не равны, необходимо возбудить исключение `ShapeMismatchError`. +- Если значение `diagram_type` не является допустимым значением, необходимо возбудить `ValueError`. + +## Задача 2. Сердечная задача + +Представим, что вы работаете аналитиком данных в некоторой медицинской компании, которая занимается изготовлением кардио-имплантов. В данный момент кампания планирует запустить в серийное производство новый кардио-имплант, устанавливаемый при митральной недостаточности (неправильное функционирование митрального клапана сердца, при котором возникает обратное движение крови из левого желудочка в левое предсердие во время сокращения желудочков сердца вследствие неполного смыкания створок клапана). Прежде, чем запускать новую разработку в серийное производство было произведено исследования эффективности импланта. Исследование происходило следующим образом: +- У пациентов, принимающих участие в исследовании, фиксировалась текущая степень митральной недостаточности. Всего степеней митральное недостаточности 4: первая степень - самая легкая, четвертая - самая опасная. +- Затем участникам исследования устанавливался кардио-имплант. +- Спустя некоторое время повторно определялась степень митральной недостаточности. + +Данные о степенях митральной недостаточности пациентов до и после установки импланта были записаны в файл [`medic_data.json`](../../../solutions/sem02/lesson07/data/medic_data.json) в следующем формате: +```python +{ + "before": [ + "I", + "II", + ... + ], + "after": [ + "I", + "II", + ... + ] +} +``` + +Ключу `"before"` соответствует список со степенями митральной недостаточности пациентов до установки импланта, а ключу `"after"` - после. Сами степени записаны в виде строковых литералов, которые стоит интерпретировать, как числа, записанные латинскими цифрами. + +Ваша задача - реализовать функционал для визуализации распределения пациентов по степеням митральной недостаточности до и после установки импланта. Для этого вам необходимо прочитать данные из файла [`medic_data.json`](../../../solutions/sem02/lesson07/data/medic_data.json), рассчитать число пациентов для каждой группы митральной недостаточности, построить столбчатые диаграммы, сохранить изображение с диаграммами в память компьютера. + +В результате выполнения приведенной последовательности действий вы должны получить картинку, похожую на эту (добавьте что-то от себя, например, поменяйте цвет или оформление): +![expected-result](./images/task2_expected.png) + +Напишите код в файле [task2](../../../solutions/sem02/lesson07/task2.py). + +Проанализируйте, полученную вами диаграмму. Какой вывод об эффективности импланта можно сделать, если стадия I самая безопасная, а стадия IV - самая опасная? diff --git a/tests/test_lesson05_tasks.py b/deprecated_tests/sem02/tests/task5/test_lesson05_tasks.py similarity index 100% rename from tests/test_lesson05_tasks.py rename to deprecated_tests/sem02/tests/task5/test_lesson05_tasks.py diff --git a/tests/test_data/lesson05/Vj_data.npy b/deprecated_tests/sem02/tests/test_data/lesson05/Vj_data.npy similarity index 100% rename from tests/test_data/lesson05/Vj_data.npy rename to deprecated_tests/sem02/tests/test_data/lesson05/Vj_data.npy diff --git a/tests/test_data/lesson05/Vs_data.npy b/deprecated_tests/sem02/tests/test_data/lesson05/Vs_data.npy similarity index 100% rename from tests/test_data/lesson05/Vs_data.npy rename to deprecated_tests/sem02/tests/test_data/lesson05/Vs_data.npy diff --git a/tests/test_data/lesson05/diag_A_data.npy b/deprecated_tests/sem02/tests/test_data/lesson05/diag_A_data.npy similarity index 100% rename from tests/test_data/lesson05/diag_A_data.npy rename to deprecated_tests/sem02/tests/test_data/lesson05/diag_A_data.npy diff --git a/tests/test_data/lesson05/y_data.npy b/deprecated_tests/sem02/tests/test_data/lesson05/y_data.npy similarity index 100% rename from tests/test_data/lesson05/y_data.npy rename to deprecated_tests/sem02/tests/test_data/lesson05/y_data.npy diff --git a/solutions/sem02/lesson07/data/medic_data.json b/solutions/sem02/lesson07/data/medic_data.json new file mode 100644 index 00000000..ab77636f --- /dev/null +++ b/solutions/sem02/lesson07/data/medic_data.json @@ -0,0 +1,406 @@ +{ + "before": [ + "III", + "II", + "I", + "II", + "II", + "III", + "III", + "III", + "II", + "II", + "III", + "III", + "II", + "II", + "III", + "III", + "II", + "III", + "III", + "I", + "II", + "III", + "I", + "III", + "II", + "III", + "I", + "IV", + "II", + "IV", + "III", + "II", + "III", + "II", + "II", + "IV", + "II", + "II", + "II", + "IV", + "III", + "III", + "III", + "II", + "II", + "II", + "III", + "III", + "II", + "II", + "II", + "I", + "III", + "IV", + "IV", + "III", + "II", + "II", + "II", + "I", + "II", + "III", + "II", + "III", + "III", + "III", + "III", + "IV", + "II", + "II", + "IV", + "IV", + "III", + "II", + "III", + "III", + "II", + "II", + "II", + "IV", + "II", + "III", + "II", + "III", + "II", + "II", + "II", + "III", + "III", + "III", + "II", + "III", + "II", + "III", + "II", + "II", + "III", + "IV", + "I", + "I", + "III", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "III", + "II", + "II", + "II", + "I", + "II", + "IV", + "II", + "I", + "II", + "III", + "III", + "III", + "III", + "III", + "III", + "II", + "III", + "II", + "III", + "I", + "II", + "II", + "III", + "II", + "II", + "IV", + "II", + "III", + "I", + "III", + "I", + "III", + "III", + "II", + "II", + "III", + "III", + "IV", + "II", + "III", + "II", + "IV", + "II", + "I", + "II", + "II", + "IV", + "II", + "IV", + "III", + "IV", + "I", + "III", + "I", + "III", + "III", + "III", + "II", + "III", + "II", + "II", + "IV", + "II", + "II", + "I", + "II", + "II", + "III", + "II", + "III", + "II", + "II", + "II", + "II", + "II", + "III", + "III", + "II", + "II", + "II", + "IV", + "II", + "I", + "II", + "II", + "II", + "III", + "III", + "III" + ], + "after": [ + "I", + "II", + "II", + "II", + "I", + "I", + "II", + "IV", + "II", + "II", + "II", + "I", + "II", + "III", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "I", + "III", + "II", + "II", + "II", + "II", + "III", + "II", + "II", + "III", + "III", + "II", + "III", + "IV", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "IV", + "I", + "II", + "II", + "IV", + "I", + "III", + "I", + "IV", + "II", + "II", + "II", + "II", + "I", + "II", + "III", + "I", + "III", + "II", + "II", + "II", + "II", + "II", + "II", + "I", + "II", + "II", + "I", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "I", + "I", + "II", + "II", + "II", + "II", + "II", + "I", + "II", + "III", + "II", + "II", + "II", + "II", + "III", + "II", + "II", + "III", + "II", + "III", + "II", + "II", + "III", + "II", + "II", + "I", + "I", + "II", + "II", + "II", + "III", + "II", + "I", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "I", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "I", + "II", + "II", + "II", + "II", + "IV", + "III", + "II", + "II", + "III", + "II", + "II", + "IV", + "II", + "I", + "IV", + "III", + "II", + "III", + "II", + "I", + "I", + "II", + "II", + "II", + "III", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "III", + "II", + "II", + "II", + "III", + "I", + "II", + "II", + "I", + "II", + "II", + "II", + "IV", + "I", + "I", + "III", + "I", + "II", + "II", + "II", + "II", + "II", + "II", + "II", + "I" + ] +} \ No newline at end of file diff --git a/solutions/sem02/lesson07/task1.py b/solutions/sem02/lesson07/task1.py new file mode 100644 index 00000000..3a505d89 --- /dev/null +++ b/solutions/sem02/lesson07/task1.py @@ -0,0 +1,28 @@ +from typing import Any + +import matplotlib.pyplot as plt +import numpy as np + + +class ShapeMismatchError(Exception): + pass + + +def visualize_diagrams( + abscissa: np.ndarray, + ordinates: np.ndarray, + diagram_type: Any, +) -> None: + # ваш код + pass + + +if __name__ == "__main__": + mean = [2, 3] + cov = [[1, 1], [1, 2]] + space = 0.2 + + abscissa, ordinates = np.random.multivariate_normal(mean, cov, size=1000).T + + visualize_diagrams(abscissa, ordinates, "hist") + plt.show() diff --git a/solutions/sem02/lesson07/task2.py b/solutions/sem02/lesson07/task2.py new file mode 100644 index 00000000..decd607e --- /dev/null +++ b/solutions/sem02/lesson07/task2.py @@ -0,0 +1 @@ +# ваш код (используйте функции или классы для решения данной задачи) From 74fd228fafc7e2560c442aa6b9b60a94f8d577cd Mon Sep 17 00:00:00 2001 From: Avshugan Date: Fri, 3 Apr 2026 22:44:37 +0300 Subject: [PATCH 2/2] Fix condition les07 --- conditions/sem02/lesson07/tasks.md | 1 + 1 file changed, 1 insertion(+) diff --git a/conditions/sem02/lesson07/tasks.md b/conditions/sem02/lesson07/tasks.md index 338b703b..319fdc38 100644 --- a/conditions/sem02/lesson07/tasks.md +++ b/conditions/sem02/lesson07/tasks.md @@ -11,6 +11,7 @@ **Сторонние эффекты**: - После выполнения функции на экране должно отображаться изображение с визуализацией, похожей на визуализацию из последнего примера с семинара (добавьте что-то от себя, например, поменяйте цвет или оформление): + ![expected-result](./images/task1_expected.png) - Если размеры массивов `abscissa` и `ordinates` не равны, необходимо возбудить исключение `ShapeMismatchError`. - Если значение `diagram_type` не является допустимым значением, необходимо возбудить `ValueError`.