Программное обеспечение Curve Fitting Toolbox™ предоставляет некоторые примеры данных для исследования взаимодействия анестезийных препаратов. Можно использовать приложение Аппроксимирование Кривыми, чтобы подгонять поверхности отклика к этим данным для анализа эффектов взаимодействия с лекарственными средствами. Модели поверхности ответа обеспечивают хороший метод для понимания фармакодинамического взаимодействия комбинаций лекарств.
Эти данные основаны на результатах в этом документе:
Kern SE, Xie G, White JL, Egan TD. Опиоидно-гипнотическая синергия: Поверхностный анализ реакции на фармакодинамическое взаимодействие пропофол-ремифентанил у добровольцев. Анестезиология 2004; 100: 1373–81.
Анестезия обычно представляет собой процесс с двумя лекарственными средствами, состоящий из опиоида и седативного гипнота. Этот пример использует Пропофол и Реминфентанил в качестве прототипов класса препарата. Их взаимодействие измеряется четырьмя различными показателями обезболивающего и седативного ответа на комбинацию препарата. Алгометрия, тетания, седация и лариингоскопия включают четыре меры суррогатных лекарственных эффектов при различных комбинациях концентраций пропофола и реминфентанила.
Для интерактивного создания поверхностей отклика для этой комбинации лекарств:
Используйте браузер Текущей папки, чтобы найти и просмотреть папку matlab\toolbox\curvefit\curvefit
.
Щелкните файл правой кнопкой мыши OpioidHypnoticSynergy.txt
, и выберите Import Data. Откроется мастер импорта.
Оставьте значение Column delimiters по умолчанию Tab и Column vectors на вкладке Импорт.
Проверьте шесть переменных, выбранных для импорта: Пропофол, Реминфентанил, Алгометрия, Тетани, Седация и Лариингоскопия.
На вкладке Импорт, в разделе Импорт, нажмите Import Selection, чтобы импортировать данные доза-реакция в MATLAB® рабочей области.
Также можно выполнить программный импорт данных. Введите следующий код, чтобы считать данные о дозе-отклике из файла в рабочее пространство MATLAB.
data = importdata( 'OpioidHypnoticSynergy.txt' ); Propofol = data.data(:,1); Remifentanil = data.data(:,2); Algometry = data.data(:,3); Tetany = data.data(:,4); Sedation = data.data(:,5); Laryingoscopy = data.data(:,6);
Чтобы создать поверхности отклика, необходимо выбрать два препарата для входов X и Y и один из четырех эффектов для выхода Z. После загрузки переменных в рабочую область можно либо открыть инструмент и выбрать переменные в интерактивном режиме, либо задать начальные переменные подгонки с cftool
команда.
Введите следующее, чтобы открыть приложение Аппроксимирование Кривыми (при необходимости) и создать новую поверхность отклика для Algometry
:
cftool(Propofol, Remifentanil, Algometry)
Проверьте приложение Аппроксимирование Кривыми X
, Y
, и Z
входной и выходной элементы управления. Инструмент отображает выбранные переменные Propofol
, Remifentanil
и Algometry
, с поверхностной подгонкой. Аппроксимация по умолчанию является интерполирующей поверхностью, которая проходы через данные точки.
Создать копию текущей поверхности подгонки можно следующим образом:
Выбор Fit > Повторяющиеся "Current Fit Name"
.
Щелчок правой кнопкой мыши по подгонке в Table of Fits и выбор Duplicate.
Выберите тип Custom Equation подгонки из выпадающего списка, чтобы задать собственное уравнение для подгонки данных.
Выберите и удалите пример пользовательского текста уравнения в поле редактирования.
Можно использовать пользовательское поле редактирования уравнения, чтобы ввести код MATLAB, чтобы определить модель. Уравнение, которое определяет модель, должно зависеть от входных переменных x
и y
и список фиксированных параметров, оценочных параметров или обоих.
Модель из статьи:
где CA и CB являются концентрациями лекарственного средства, и IC50A, IC50B, альфа и n являются коэффициентами, которые должны быть оценены.
Вы можете определить это в коде MATLAB как
Effect = Emax*( CA/IC50A + CB/IC50B + alpha*( CA/IC50A )... .* ( CB/IC50B ) ).^n ./(( CA/IC50A + CB/IC50B + ... alpha*( CA/IC50A ) .* ( CB/IC50B ) ).^n + 1);
Указание инструменту, какие переменные подгоняются и какие параметры оцениваются, требует переписывания имен переменных CA
и CB
на x
, и y
. Вы должны включать x
и y
при вводе пользовательского уравнения в поле редактирования. Предположим Emax = 1
потому что выход эффекта нормирован.
Введите следующий текст в поле редактирования пользовательского уравнения.
( x/IC50A + y/IC50B + alpha*( x/IC50A ) .* ( y/IC50B ) ).^n ./(( x/IC50A + y/IC50B + alpha*( x/IC50A ) .* ( y/IC50B ) ).^n + 1);
Приложение Аппроксимирование Кривыми подбирает поверхность к данным с помощью пользовательской модели уравнения.
Установите некоторые опции подгонки, нажав Fit Options под пользовательским уравнением.
В диалоговом окне Опции подгонки (Fit Options):
Установите Robust значение Lar
Установите alpha StartPoint равной 1, а нижнюю границу равную -5.
Оставьте другие значения по умолчанию и нажатие кнопки Close.
Инструмент переходит к новым опциям.
Проверьте панель Results. Просмотрите (и, опционально, скопируйте) любой из следующих результатов:
Моделирующее уравнение
Значения оцененных коэффициентов
Статистика качества подгонки
Отобразите график невязок, чтобы проверить распределение точек относительно поверхности, нажав кнопку на панели инструментов или выбрав View > Residuals Plot.
Чтобы сгенерировать код для всех подгонок и графиков в вашем Аппроксимировании кривыми сеанса приложения, выберите File > Generate Code.
Приложение Аппроксимирование Кривыми генерирует код из вашего сеанса и отображает файл в редакторе MATLAB. Файл включает все подгонки и графики в текущем сеансе.
Сохраните файл с именем по умолчанию, createFits.m
.
Можно воссоздать свои подгонки и графики, вызвав файл из командной строки (с исходными данными или новыми данными в качестве входных параметров). В этом случае ваши исходные данные все еще появляются в рабочей области.
Выделите первую линию файла (исключая слово function
), и оценить его путем либо щелчка правой кнопкой мыши и выбора Evaluate Selection in Command Window, нажатия F9, либо копирования и вставки следующего в командную строку:
[fitresult, gof] = createFits(Propofol,... Remifentanil, Algometry)
Функция создает окно рисунка для каждой подгонки, имеющегося в сеансе. На пользовательском рисунке показаны как поверхность, так и остатки графиков, которые вы создали в интерактивном режиме в приложении Аппроксимирования кривыми.
Создайте новую подгонку к отклику Tetany вместо Алгометрии путем ввода:
[fitresult, gof] = createFits(Propofol,... Remifentanil, Tetany)
Вы должны отредактировать файл, если вы хотите, чтобы новая метка ответа на графиках. Можно использовать сгенерированный код в качестве начальной точки для изменения моделей поверхности и графиков в соответствии с вашими потребностями. Список методов, которые можно использовать, см. sfit
.
Чтобы увидеть, как программно подгонять поверхности к той же задаче примера, смотрите Surface Fitting With Custom Equations to Biopharmaceutical Data.