PredictionConfidenceInterval

Объект, содержащий доверительный интервал, заканчивается для предсказаний модели

Описание

PredictionConfidenceInterval объект содержит результаты доверительного интервала для предсказаний модели (то есть, результаты симуляции на основе предполагаемых параметров), вычисленное использование sbiopredictionci.

Создание

Описание

пример

ci = sbiopredictionci(fitResults) вычисляет 95% доверительных интервалов для симуляции модели, следует из fitResults, NLINResults object или OptimResults object возвращенный sbiofit. ci PredictionConfidenceInterval объект, который содержит вычисленные данные о доверительном интервале.

ci = sbiopredictionci(fitResults,Name,Value) дополнительные опции использования заданы одним или несколькими Name,Value парные аргументы.

Входные параметры

развернуть все

Оценка параметра следует sbiofitВ виде NLINResults object, OptimResults object, или вектор из объектов для необъединенных подгонок, которые были возвращены в то же самое sbiofit вызвать.

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'Alpha',0.01,'Type','bootstrap' задает, чтобы вычислить 99%-й доверительный интервал с помощью метода начальной загрузки.

Доверительный уровень, (1-Alpha) * 100%В виде разделенной запятой пары, состоящей из 'Alpha' и положительная скалярная величина между 0 и 1. Значением по умолчанию является 0.05, значение 95%-го доверительного интервала вычисляется.

Пример: 'Alpha',0.01

Тип доверительного интервала в виде разделенной запятой пары, состоящей из 'Type' и вектор символов. Допустимый выбор:

Пример: 'Type','bootstrap'

Количество выборок для начальной загрузки в виде разделенной запятой пары, состоящей из 'NumSamples' и положительное целое число. Этот номер задает количество подгонок, которые выполняются во время расчета доверительного интервала, чтобы сгенерировать выборки начальной загрузки. Чем меньше номер, тем быстрее расчет доверительных интервалов становится, за счет уменьшенной точности.

Пример: 'NumSamples',500

Level of display, возвращенный в командную строку в виде разделенной запятой пары, состоящей из 'Display' и вектор символов. 'off' (значение по умолчанию) или 'none' не отображает вывода. 'final' отображает сообщение, когда расчет заканчивается.

Пример: 'Display','final'

Логический флаг, чтобы вычислить доверительные интервалы параллельно в виде разделенной запятой пары, состоящей из 'UseParallel' и true или false. По умолчанию параллельные опции в исходной подгонке используются. Если этот аргумент установлен в true и Parallel Computing Toolbox™ доступен, параллельные опции в исходной подгонке проигнорированы, и доверительные интервалы вычисляются параллельно.

Для Гауссовых доверительных интервалов:

  • Если вход fitResults вектор из объектов результатов, затем расчет доверительных интервалов для каждого объекта выполняется параллельно. Гауссовы доверительные интервалы быстры, чтобы вычислить. Так, это может быть более выгодно, чтобы параллелизировать исходную подгонку (sbiofit) и не набор UseParallel к истине для sbiopredictionci.

Для доверительных интервалов Начальной загрузки:

  • Функция вперед UseParallel отметьте к bootci. Нет никакого распараллеливания по входному вектору объектов результатов.

Примечание

Если у вас есть глобальный поток для генерации случайных чисел со многими подпотоками, чтобы вычислить параллельно восстанавливаемым способом, sbiopredictionci первые проверки, которые будут видеть, является ли количество рабочих тем же самым как количество подпотоков. Если так, функция устанавливает UseSubstreams к true в statset опция и передачи в bootci (Statistics and Machine Learning Toolbox). В противном случае подпотоки проигнорированы по умолчанию.

Пример: 'UseParallel',true

Свойства

развернуть все

Это свойство доступно только для чтения.

Имена ответов модели в параметре соответствуют в виде массива ячеек из символьных векторов. Каждая ячейка содержит имя ответа.

Пример: {'Central.Drug_Central' } {'Peripheral.Drug_Peripheral'}

Это свойство доступно только для чтения.

Состояние оценки доверительного интервала в виде одного из следующих категориальных значений:

  • success – Соответствующие доверительные интервалы найдены. Таким образом, никакое предсказание модели не ограничивается границами параметра, заданными в исходной подгонке.

  • constrained – Доверительные интервалы найдены, но доверительный интервал для ответа модели ограничивается параметром, связанным заданный в исходной подгонке.

  • not estimable – Никакие доверительные интервалы не найдены.

  • estimable – Соответствующие доверительные интервалы найдены, но другие предсказания модели имеют состояние оценки любого constrained или not estimable. Для доверительного интервала начальной загрузки состояние всегда устанавливается в estimable.

Для получения дополнительной информации смотрите Гауссово Вычисление Доверительного интервала для Предсказаний Модели и Вычисление Доверительного интервала Начальной загрузки.

Пример: success

Это свойство доступно только для чтения.

Тип доверительного интервала в виде 'gaussian' или 'bootstrap'.

Пример: 'bootstrap'

Это свойство доступно только для чтения.

Доверительный уровень, (1-Alpha) * 100%В виде положительной скалярной величины между 0 и 1.

Пример: 0.01

Это свойство доступно только для чтения.

Исходные названия группы из данных, используемых для того, чтобы подбирать модель в виде массива ячеек из символьных векторов. Каждая ячейка содержит имя группы.

Пример: {'1'}{'2'}{'3'}

Это свойство доступно только для чтения.

Доверительный интервал заканчивается в виде таблицы. Таблица содержит следующие столбцы.

ColumnName Описание
GroupНазвание группы
ResponseИмя ответа модели
TimeВремя симуляции
EstimateПредполагаемое значение отклика
ConfidenceIntervalЗначения доверительного интервала

Это свойство доступно только для чтения.

Выйдите из флагов, возвращенных во время вычисления bootstrap доверительные интервалы только в виде вектора из целых чисел. Каждое целое число является выходным флагом, возвращенным функцией оценки (кроме nlinfit) используемый, чтобы соответствовать параметрам во время начальной загрузки. Та же функция оценки, используемая в исходной подгонке, используется для начальной загрузки.

Каждый флаг указывает на состояние успешности или неуспешности подбора кривой, выполняемого, чтобы создать выборку начальной загрузки. Обратитесь к странице с описанием соответствующей функции оценки для значения выходного флага.

Если функция оценки не возвращает выходной флаг, ExitFlags установлен в []. Для gaussian доверительные интервалы, ExitFlags не поддерживается и всегда устанавливается в [].

Функции объекта

plotПостройте результаты доверительного интервала для предсказаний модели

Примеры

свернуть все

Загрузка данных

Загрузите выборочные данные, чтобы соответствовать. Данные хранятся как таблица с переменными ID, Время, CentralConc и PeripheralConc. Эти синтетические данные представляют ход времени плазменных концентраций, измеренных в восьми различных моментах времени и для центральных и для периферийных отсеков после капельного внутривенного введения для трех индивидуумов.

clear all
load data10_32R.mat
gData = groupedData(data);
gData.Properties.VariableUnits = {'','hour','milligram/liter','milligram/liter'};
sbiotrellis(gData,'ID','Time',{'CentralConc','PeripheralConc'},'Marker','+',...
            'LineStyle','none');

Создайте модель

Создайте модель 2D отсека.

pkmd                 = PKModelDesign;
pkc1                 = addCompartment(pkmd,'Central');
pkc1.DosingType      = 'Infusion';
pkc1.EliminationType = 'linear-clearance';
pkc1.HasResponseVariable = true;
pkc2                 = addCompartment(pkmd,'Peripheral');
model                = construct(pkmd);
configset            = getconfigset(model);
configset.CompileOptions.UnitConversion = true;

Задайте дозирование

Задайте капельное внутривенное введение.

dose             = sbiodose('dose','TargetName','Drug_Central');
dose.StartTime   = 0;
dose.Amount      = 100;
dose.Rate        = 50;
dose.AmountUnits = 'milligram';
dose.TimeUnits   = 'hour';
dose.RateUnits   = 'milligram/hour';

Задайте параметры

Задайте параметры, чтобы оценить. Установите границы параметра для каждого параметра. В дополнение к этим явным границам преобразования параметра (такие как журнал, логит или пробит) налагают неявные границы.

responseMap = {'Drug_Central = CentralConc','Drug_Peripheral = PeripheralConc'};
paramsToEstimate   = {'log(Central)','log(Peripheral)','Q12','Cl_Central'};
estimatedParam     = estimatedInfo(paramsToEstimate,...
                                   'InitialValue',[1 1 1 1],...
                                   'Bounds',[0.1 3;0.1 10;0 10;0.1 2]);

Подбирайте модель

Выполните необъединенную подгонку, то есть, один набор предполагаемых параметров для каждого пациента.

unpooledFit = sbiofit(model,gData,responseMap,estimatedParam,dose,'Pooled',false);

Выполните объединенную подгонку, то есть, один набор предполагаемых параметров для всех пациентов.

pooledFit = sbiofit(model,gData,responseMap,estimatedParam,dose,'Pooled',true);

Вычислите доверительные интервалы для предполагаемых параметров

Вычислите 95% доверительных интервалов для каждого предполагаемого параметра в необъединенной подгонке.

ciParamUnpooled = sbioparameterci(unpooledFit);

Отображение результатов

Отобразите доверительные интервалы в формате таблицы. Для получения дополнительной информации о значении каждого состояния оценки, смотрите Состояние Оценки Доверительного интервала Параметра.

ci2table(ciParamUnpooled)
ans =

  12x7 table

    Group         Name         Estimate    ConfidenceInterval      Type      Alpha      Status   
    _____    ______________    ________    __________________    ________    _____    ___________

      1      {'Central'   }      1.422      1.1533     1.6906    Gaussian    0.05     estimable  
      1      {'Peripheral'}     1.5629     0.83143     2.3551    Gaussian    0.05     constrained
      1      {'Q12'       }    0.47159     0.20093    0.80247    Gaussian    0.05     constrained
      1      {'Cl_Central'}    0.52898     0.44842    0.60955    Gaussian    0.05     estimable  
      2      {'Central'   }     1.8322      1.7893     1.8751    Gaussian    0.05     success    
      2      {'Peripheral'}     5.3368      3.9133     6.7602    Gaussian    0.05     success    
      2      {'Q12'       }    0.27641      0.2093    0.34351    Gaussian    0.05     success    
      2      {'Cl_Central'}    0.86034     0.80313    0.91755    Gaussian    0.05     success    
      3      {'Central'   }     1.6657      1.5818     1.7497    Gaussian    0.05     success    
      3      {'Peripheral'}     5.5632      4.7557     6.3708    Gaussian    0.05     success    
      3      {'Q12'       }    0.78361     0.65581    0.91142    Gaussian    0.05     success    
      3      {'Cl_Central'}     1.0233     0.96375     1.0828    Gaussian    0.05     success    

Постройте доверительные интервалы. Если состоянием оценки доверительного интервала является success, это построено в синем (первый цвет по умолчанию). В противном случае это построено в красном (второй цвет по умолчанию), который указывает, что дальнейшее расследование подходящих параметров может требоваться. Если доверительным интервалом является not estimable, затем графики функций красная линия с крестом в центре. Если существуют какие-либо преобразованные параметры с ориентировочными стоимостями 0 (для журнала, преобразовывают) и 1 или 0 (для пробита, или логит преобразовывают), то никакие доверительные интервалы не построены для тех оценок параметра. Чтобы видеть последовательность цветов, введите get(groot,'defaultAxesColorOrder').

Группы отображены слева направо в том же порядке, что они появляются в GroupNames свойство объекта, который используется, чтобы пометить ось X. Y-метки являются преобразованными названиями параметра.

plot(ciParamUnpooled)

Вычислите доверительные интервалы для объединенной подгонки.

ciParamPooled = sbioparameterci(pooledFit);

Отобразите доверительные интервалы.

ci2table(ciParamPooled)
ans =

  4x7 table

    Group          Name         Estimate    ConfidenceInterval      Type      Alpha      Status   
    ______    ______________    ________    __________________    ________    _____    ___________

    pooled    {'Central'   }     1.6626      1.3287     1.9965    Gaussian    0.05     estimable  
    pooled    {'Peripheral'}      2.687     0.89848     4.8323    Gaussian    0.05     constrained
    pooled    {'Q12'       }    0.44956     0.11445    0.85152    Gaussian    0.05     constrained
    pooled    {'Cl_Central'}    0.78493     0.59222    0.97764    Gaussian    0.05     estimable  

Постройте доверительные интервалы. Название группы помечено, как "объединено", чтобы указать на такую подгонку.

plot(ciParamPooled)

Постройте все результаты доверительного интервала вместе. По умолчанию доверительный интервал для каждой оценки параметра построен на отдельные оси. Вертикальные доверительные интервалы группы линий оценок параметра, которые были вычислены в общей подгонке.

ciAll = [ciParamUnpooled;ciParamPooled];
plot(ciAll)

Можно также построить все доверительные интервалы в осях, сгруппированных оценками параметра с помощью 'Сгруппированного' размещения.

plot(ciAll,'Layout','Grouped')

В этом размещении можно указать на центральный маркер каждого доверительного интервала, чтобы видеть название группы. Каждый предполагаемый параметр разделяется вертикальной черной линией. Вертикальные доверительные интервалы группы пунктирных линий оценок параметра, которые были вычислены в общей подгонке. Границы параметра, заданные в исходной подгонке, отмечены квадратными скобками. Отметьте различные шкалы на оси Y из-за преобразований параметра. Например, ось Y Q12 находится в линейной шкале, но том из Central находится в логарифмической шкале из-за ее журнала, преобразовывают.

Вычислите доверительные интервалы для предсказаний модели

Вычислите 95% доверительных интервалов для предсказаний модели, то есть, результаты симуляции с помощью предполагаемых параметров.

% For the pooled fit
ciPredPooled = sbiopredictionci(pooledFit);
% For the unpooled fit
ciPredUnpooled = sbiopredictionci(unpooledFit);

Постройте доверительные интервалы для предсказаний модели

Доверительный интервал для каждой группы построен в отдельном столбце, и каждый ответ построен в отдельной строке. Доверительные интервалы, ограниченные границами, построены в красном. Доверительные интервалы, не ограниченные границами, построены в синем.

plot(ciPredPooled)

plot(ciPredUnpooled)

Введенный в R2017b
Для просмотра документации необходимо авторизоваться на сайте