![]() |
DrugDesign Data Analysis
Module of the DrugDesign project responsible for loading and pre-processing data from ChEMBL and PubChem
|
Этот модуль отвечает за загрузку и предварительную обработку данных из ChEMBL и PubChem, необходимых для дальнейшего моделирования и анализа при разработке лекарств.
Цель модуля:
Документация, созданная с помощью Doxygen.
0. Клонирование репозитория:
Перед тем как начать, вам необходимо клонировать репозиторий с исходным кодом проекта. ```bash git clone https://gitlab.com/UmbrellaLeaf5/drugdesign_parsing.git ``` Перейдите в директорию, куда был клонирован репозиторий: ```bash cd DrugDesign_data_analysis ```
Создание виртуального окружения:
Откройте терминал или командную строку в корневой директории вашего проекта (там, где находится файл requirements.txt
) и выполните следующую команду для создания виртуального окружения с именем .venv
:
bash python3 -m venv .venv
или
bash python -m venv .venv
Python 3
, можете использовать python
вместо python3
.Активация виртуального окружения:
Активируйте виртуальное окружение, чтобы Python
использовал библиотеки, установленные внутри него:
Linux/macOS:
bash source .venv/bin/activate
Windows (Command Prompt):
cmd .venv\Scripts\activate
Windows (PowerShell):
powershell .venv\Scripts\Activate.ps1
После активации вы увидите (.venv)
в начале строки терминала, указывающее на то, что виртуальное окружение активно.
Установка зависимостей из requirements.txt
:
Установите все библиотеки, перечисленные в файле requirements.txt
, выполнив следующую команду:
bash ./.venv/Scripts/pip install -r requirements.txt
или просто:
bash pip install -r requirements.txt
Файл config.json
содержит параметры конфигурации для загрузки и обработки данных, в основном сфокусированного на базах данных ChEMBL
и PubChem
. Он определяет настройки для загрузки соединений, активностей, клеточных линий и информации о мишенях из ChEMBL
, а также данных о токсичности из PubChem
.
testing_flag
: boolean - логический флаг, который, когда установлен в true
, включает режим тестирования (ограничивает количество загружаемых данных для ускорения тестирования). При рабочей эксплуатации должен быть установлен в false
.skip_downloaded
: boolean - логический флаг, указывающий, следует ли пропускать загрузку, если файлы уже существуют (полезно для повторного запуска скрипта без перезагрузки данных).csv_separator
: string - строка, определяющая разделитель полей в CSV-файлах (например, "," или ";").keyboard_end_message
: string - сообщение, которое выводится при завершении загрузки по нажатию клавиш (Ctrl+C
/Ctrl+Z
).Подзадача загрузки активностей с ChEMBL для различных мишеней и клеточных линий, которая выполняется при включении определенных флагов в других задачах.
logger_label
: string - метка, используемая для сообщений журнала, связанных с этой задачей (для идентификации в логах).logger_color
: string - цветовой код для вывода журнала.results_folder_name
: string - имя папки для хранения загруженных данных об активности.download_compounds_sdf
: boolean - логический флаг, указывающий, следует ли догружать соединения в формате SDF.Задача по загрузке клеточных линий с ChEMBL.
download
: boolean - логический флаг, указывающий, следует выполнять эту задачу в текущем запуске программы.logger_label
: string - метка, используемая для сообщений журнала, связанных с этой задачей.logger_color
: string - цветовой код для вывода журнала.results_folder_name
: string - имя папки для хранения загруженных данных о клеточных линиях.results_file_name
: string - имя файла для сохранения данных о клеточных линиях.download_activities
: boolean - логический флаг, указывающий, следует ли загружать данные об активности для клеточных линий.raw_csv_folder_name
: string - имя папки для хранения необработанных данных в формате .csv.raw_csv_g_drive_id
: string - идентификатор Google.Drive архива, в котором лежат неочищенные файлы с необходимыми активностями (необходим, так как активности к клеточным линиям через интерфейс chembl_webresource_client
или API ChEMBL - не вышло).download_all
: boolean - логический флаг, указывающий, следует ли загружать данные для всех клеточных линий или только для клеточных линий, указанных в id_list
.download_compounds_sdf
: boolean - логический флаг, указывающий, следует ли загружать соединения в формате .sdf.id_list
: list[string] - список ChEMBL_ID для конкретных клеточных линий, для которых необходимо загрузить данные.Задача по загрузке соединений с ChEMBL.
download
: boolean - логический флаг, указывающий, следует выполнять эту задачу в текущем запуске программы.logger_label
: string - метка, используемая для сообщений журнала, связанных с этой задачей.logger_color
: string - цветовой код для вывода журнала.results_folder_name
: string - имя папки для хранения загруженных данных о соединениях.molfiles_folder_name
: string - имя папки для хранения mol- и sdf-файлов соединений.combined_file_name
: string - имя файла для сохранения объединенных данных о соединениях.need_combining
: boolean - логический флаг, указывающий, нужно ли объединять соединения в один файл.delete_after_combining
: boolean - логический флаг, указывающий, следует ли удалять оставшиеся данные после объединения.mw_ranges
: list[lists[float]] - список диапазонов молекулярной массы, используемых для фильтрации загрузки соединений.Задача по загрузке мишеней с ChEMBL.
download
: boolean - логический флаг, указывающий, следует выполнять эту задачу в текущем запуске программы.logger_label
: string - метка, используемая для сообщений журнала, связанных с этой задачей.logger_color
: string - цветовой код для вывода журнала.results_folder_name
: string - имя папки для хранения загруженных данных о мишенях.results_file_name
: string - имя файла для сохранения данных о мишенях.download_activities
: boolean - логический флаг, указывающий, следует ли загружать данные об активностях для мишеней.download_all
: boolean - логический флаг, указывающий, следует ли загружать данные для всех мишеней или только для мишеней, указанных в id_list
.download_compounds_sdf
: boolean - логический флаг, указывающий, следует ли загружать соединения в формате SDF.id_list
: list[string] - список ChEMBL_ID для конкретных мишеней, для которых необходимо загрузить данные.Задача по загрузке токсичности соединений линий с PubChem (ChemIDPlus).
download
: boolean - логический флаг, указывающий, следует выполнять эту задачу в текущем запуске программы.logger_label
: string - метка, используемая для сообщений журнала, связанных с этой задачей.logger_color
: string - цветовой код для вывода журнала.results_folder_name
: string - имя папки для хранения загруженных данных о токсичности.molfiles_folder_name
: string - имя папки для хранения mol- и sdf-файлов соединений.results_file_name
: string - имя файла для сохранения данных о токсичности.combined_file_name
: string - имя файла для сохранения объединенных данных о токсичности.need_combining
: boolean - логический флаг, указывающий, нужно ли объединять данные.delete_after_combining
: boolean - логический флаг, указывающий, следует ли удалять оставшиеся данные после объединения.download_compounds_sdf
: boolean - логический флаг, указывающий, следует ли загружать соединения в формате SDF.filtering
: dictionary - словарь, содержащий параметры фильтрации данных о токсичности.kg
: dictionary - фильтрация для дозы, указанной в mg/kg
.organism
: list[string] - список организмов для фильтрации.route
: list[string] - список способов введения для фильтрации.m3
: dictionary - фильтрация для дозы, указанной в mg/m3
.organism
: list[string] - список организмов для фильтрации.route
: list[string] - список способов введения для фильтрации.need_filtering_by_characteristics
: boolean - логический флаг, указывающий, следует сохранять отфильтрованные по количеству вхождений характеристик выборки токсичности.occurrence_characteristics_number
: integer - минимальное количество вхождений характеристик в соотв. выборки.characteristics_folder_name
: string - имя папки для хранения отфильтрованных по количеству вхождений характеристик выборок токсичности.sleep_time
: float - число с плавающей точкой, представляющее время ожидания между запросами (в секундах, для предотвращения блокировки со стороны PubChem).start_page
: integer - число, представляющее начальную страницу данных о токсичности.end_page
: integer - число, представляющее последнюю страницу данных о токсичности.limit
: integer - число, представляющее лимит для кол-ва данных за 1 запрос.logger_label
: string - метка, используемая для сообщений журнала, связанных с этой задачей.logger_color
: string - цветовой код для вывода журнала.verbose_print
: boolean - логический флаг, указывающий, включен ли подробный вывод в консоль.message_ljust
: integer - ширина левого выравнивания для сообщений лога.exceptions_file
: string - имя файла для записи исключений.output_to_exceptions_file
: boolean - логический флаг, указывающий, следует ли выводить весь вывод только в файл для записи исключений.attempts_amount
: integer - количество попыток по умолчанию.sleep_time
: float - время ожидания между попытками (в секундах) по умолчанию.