Files
help_lab/README.md
T

10 KiB
Raw Blame History

🧪 Цифровой помощник биохимика

Биотехнологические инструменты для лаборатории: калькулятор питательных сред и планирование полнофакторного эксперимента (DoE).


📋 Содержание


Возможности

🔬 Калькулятор питательных сред

  • Расчёт состава питательной среды по процентному содержанию компонентов
  • Поддержка массовых (нг, мкг, мг, г, кг) и объёмных (нл, мкл, мл, л) единиц
  • Учёт коэффициента пересчёта для каждого реагента
  • Учёт разбавления реагентов (фактор разбавления)
  • Автоматический расчёт необходимого количества растворителя
  • Сохранение и загрузка рецептов в JSON

📊 Планирование эксперимента (DoE)

  • Полнофакторный план 2ᵏ (k факторов)
  • Генерация матрицы планирования с центральными точками
  • Рэндомизация порядка опытов
  • Ввод и анализ результатов экспериментов
  • Регрессионный анализ (среднее, дисперсия, стандартное отклонение, CV)
  • Критерий Фишера для проверки адекватности модели
  • Экспорт матрицы в CSV

🚀 Установка

Клонирование репозитория

git clone <repository-url>
cd nutrient_medium_pyqt
2. Создание виртуального окружения (рекомендуется)
bash
python3 -m venv venv
source venv/bin/activate  # Linux/Mac
# или
venv\Scripts\activate     # Windows

Установка зависимостей

pip install -r requirements.txt

▶️ Запуск

Из командной строки

python3 main.py

Через скрипт

chmod +x run.sh
./run.sh

📁 Структура проекта

nutrient_medium_pyqt/
├── main.py                          # Точка входа
├── run.sh                           # Скрипт запуска
├── requirements.txt                 # Зависимости
├── README.md                        # Документация
│
└── src/                             # Исходный код
    ├── models/                      # Модели данных
    │   ├── reagent.py               # Класс Reagent
    │   ├── medium_model.py          # Модель расчёта сред
    │   └── experiment_model.py      # Модель планирования эксперимента
    │
    ├── views/                       # GUI компоненты
    │   ├── main_window.py           # Главное окно
    │   ├── medium_view.py           # Окно калькулятора сред
    │   └── experiment_view.py       # Окно планирования эксперимента
    │
    └── controllers/                 # Контроллеры
        ├── medium_controller.py     # Логика калькулятора
        └── experiment_controller.py # Логика планирования

Основные поля

Поле Описание
Общее количество Общий объём/масса готовой среды
Растворитель Название растворителя (вода, буфер и т.д.)
Название Имя реагента
% Процентное содержание в среде
Единица Единица измерения реагента
Коэфф. Коэффициент пересчёта (например, для солей-гидратов)
Разбавление (x) Во сколько раз разбавлен исходный раствор

Пример использования

Шаг Действие
1 Укажите общий объём среды (например, 1000 мл)
2 Добавьте реагенты с их процентным содержанием
3 При необходимости укажите коэффициент пересчёта и разбавление
4 Нажмите "Рассчитать"
5 В столбце "Количество" отобразятся необходимые объёмы/массы

📈 Планирование эксперимента

Вкладка "Параметры эксперимента"

Факторы

Параметр Описание
Фактор Название независимой переменной
Нулевой уровень (0) Базовое значение
Шаг Интервал варьирования
Верхний уровень (+1) Нулевой уровень + шаг (вычисляется автоматически)
Нижний уровень (-1) Нулевой уровень – шаг (вычисляется автоматически)
Единица измерения °C, pH, г/л и т.д.

Отклики

Параметр Описание
Зависимые переменные OD600, концентрация продукта и т.д.

Настройки

Параметр Описание
Количество центральных точек Для оценки дисперсии воспроизводимости
Рэндомизация порядка опытов Случайный порядок выполнения

Вкладка "Матрица планирования"

Функция Описание
Отображение плана Сгенерированный план эксперимента
Факторные точки Помечены комбинацией уровней (+/–)
Центральные точки Выделены жёлтым цветом
Экспорт в CSV Сохраняет матрицу в файл

Вкладка "Анализ результатов"

Порядок работы

  1. Введите результаты экспериментов в таблицу
  2. Нажмите "Провести регрессионный анализ"

Результаты анализа

Показатель Описание
Среднее значение отклика Центральная тенденция данных
Общая дисперсия Разброс данных относительно среднего
Стандартное отклонение Квадратный корень из дисперсии
Коэффициент вариации (CV) Относительная мера разброса данных
Дисперсия воспроизводимости Оценивается по центральным точкам
Критерий Фишера (F-отношение) Проверка адекватности модели

💾 Сохранение и загрузка

Калькулятор питательных сред

Кнопка Действие
💾 Сохранить Сохранить рецепт в JSON-файл
📂 Загрузить Загрузить сохранённый рецепт

Планирование эксперимента

Кнопка Действие
📊 Экспорт в CSV Сохранить матрицу планирования в CSV-файл

📦 Требования

Пакет Версия Назначение PyQt5 ≥ 5.15.0 Графический интерфейс numpy ≥ 1.19.0 Математические вычисления Проверка установки

python3 -c "import PyQt5; import numpy; print('OK')"

📝 Формат JSON (калькулятор сред)

{
    "total_amount": 1000.0,
    "amount_unit": "мл",
    "solvent": "Вода",
    "reagents": [
        {
            "name": "Глюкоза",
            "percentage": 2.0,
            "unit": "г",
            "conversion_factor": 1.0,
            "dilution_factor": 1.0
        }
    ]
}

🐛 Устранение неполадок

Ошибка "ModuleNotFoundError: No module named 'PyQt5'"

pip install PyQt5
Ошибка "No module named 'numpy'"
bash
pip install numpy
Проблемы с отображением кириллицы
Убедитесь, что в системе установлены русские шрифты

📄 Лицензия © 2026 Цифровой помощник биохимика

Версия: 1.0.0

🙏 Благодарности Разработано с использованием:

PyQt5 — GUI framework

NumPy — численные вычисления