ecdf

Эмпирическая кумулятивная функция распределения

Описание

пример

[f,x] = ecdf(y) возвращает эмпирическую кумулятивную функцию распределения (cdf), f, оцененный в точках в x, использование данных в векторном y.

В выживании и анализе надежности, этот эмпирический cdf называется оценкой Каплана-Мейера. И данные могут соответствовать временам выживания или отказа.

пример

[f,x] = ecdf(y,Name,Value) возвращает эмпирические значения функции, f, оцененный в точках в x, с дополнительными опциями, заданными одним или несколькими Name,Value парные аргументы.

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

пример

[f,x,flo,fup] = ecdf(___) также возвращает на 95% более низкое и верхние доверительные границы для оцененных значений функции. Можно комбинировать с любым синтаксом из перечисленных выше.

ecdf вычисляет доверительные границы с помощью формулы Гринвуда. Они не одновременные доверительные границы.

пример

ecdf(___) чертит ступенчатый график выполненной функции при помощи stairs функция. Задайте 'Bounds','on' включать доверительные границы в график.

ecdf(ax,___) графики на осях заданы ax вместо текущей системы координат (gca).

Примеры

свернуть все

Вычислите оценку Каплана-Мейера кумулятивной функции распределения (cdf) для симулированных данных о выживании.

Сгенерируйте данные о выживании из распределения Weibull параметрами 3 и 1.

rng('default')  % for reproducibility
failuretime = random('wbl',3,1,15,1);

Вычислите оценку Каплана-Мейера cdf для данных о выживании.

[f,x] = ecdf(failuretime);
[f,x]
ans = 16×2

         0    0.0895
    0.0667    0.0895
    0.1333    0.1072
    0.2000    0.1303
    0.2667    0.1313
    0.3333    0.2718
    0.4000    0.2968
    0.4667    0.6147
    0.5333    0.6684
    0.6000    1.3749
      ⋮

Постройте предполагаемый cdf.

ecdf(failuretime)

Вычислите и постройте функцию опасности симулированных подвергнутых цензуре правом данных о выживании.

Сгенерируйте времена отказа от распределения Бирнбаума-Сондерса.

rng('default')  % For reproducibility
failuretime = random('birnbaumsaunders',0.3,1,100,1);

При предположении, что конец исследования во время 0.9, сгенерируйте логический массив, который указывает симулированное время отказа, которое больше, чем 0,9 как подвергнутые цензуре данные и хранит эту информацию в векторе.

T = 0.9;
cens = (failuretime>T);

Постройте эмпирическую функцию опасности для данных.

ecdf(failuretime,'Function','cumulative hazard', ...
    'Censoring',cens,'Bounds','on');

Сгенерируйте подвергнутые цензуре правом данные о выживании и сравните эмпирическую кумулятивную функцию распределения (cdf) с известным cdf.

Сгенерируйте времена отказа от экспоненциального распределения со средним временем отказа 15.

rng('default')  % For reproducibility
y = exprnd(15,75,1);

Сгенерируйте времена уволенного от экспоненциального распределения со средним временем отказа 30.

d = exprnd(30,75,1);

Сгенерируйте наблюдаемые времена отказа. Они - минимум сгенерированных времен отказа и времен уволенного.

t = min(y,d);

Создайте логический массив, который указывает сгенерированное время отказа, которое больше, чем времена уволенного. Данные, для которых это верно, подвергаются цензуре.

censored = (y>d);

Вычислите эмпирический cdf и доверительные границы.

[f,x,flo,fup] = ecdf(t,'Censoring',censored);

Постройте cdf и доверительные границы.

figure()
ecdf(t,'Censoring',censored,'Bounds','on');
hold on

Наложите график известного населения cdf.

xx = 0:.1:max(t);
yy = 1-exp(-xx/15);
plot(xx,yy,'g-','LineWidth',2)
axis([0 50 0 1])
legend('Empirical','LCB','UCB','Population', ...
    'Location','southeast')
hold off

Сгенерируйте данные о выживании и постройте эмпирическую функцию оставшегося в живых с 99% доверительных границ.

Сгенерируйте пожизненные данные из распределения Weibull параметрами 100 и 2.

rng('default')  % For reproducibility
R = wblrnd(100,2,100,1);

Постройте функцию оставшегося в живых для данных с 99% доверительных границ.

ecdf(R,'Function','survivor','Alpha',0.01,'Bounds','on')
hold on

Соответствуйте функции оставшегося в живых Weibull.

x = 1:1:250;
wblsurv = 1-cdf('weibull',x,100,2);
plot(x,wblsurv,'g-','LineWidth',2)
legend('Empirical','LCB','UCB','Population', ...
    'Location','northeast')

Функция оставшегося в живых на основе фактического распределения в доверительных границах.

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

свернуть все

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

ecdf игнорирует NaN значения в y. Кроме того, любой NaN значения в векторе цензурирования ('Censoring') или вектор частоты ('Frequency') причина ecdf проигнорировать соответствующие значения в y.

Типы данных: single | double

Оси обрабатывают для фигуры ecdf графики к в виде указателя.

Например, если h указатель для фигуры, затем ecdf может построить той фигуре можно следующим образом.

Пример: ecdf(h,x)

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

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

Пример: 'Censoring',c,'Function','cumulative hazard','Alpha',0.025,'Bounds','on' задает тот ecdf возвращает совокупную функцию опасности и строит доверительные границы на 97,5%, составляя подвергнутые цензуре данные, заданные векторным c.

Индикатор подвергнутых цензуре данных в виде разделенной запятой пары включая 'Censoring' и булев массив одного размера с x. Введите 1 для наблюдений, которые подвергаются цензуре правом и 0 для наблюдений, которые полностью наблюдаются. Значением по умолчанию являются все наблюдения, полностью наблюдаются.

ecdf игнорирует любой NaN значения в этом векторе цензурирования. Кроме того, любой NaN значения в y или вектор частоты ('Frequency') причина ecdf проигнорировать соответствующие значения в векторе цензурирования.

Пример: Если векторный cdata хранит подвергнутую цензуре информацию данных, введите 'Censoring',cdata.

Типы данных: логический

Частота наблюдений в виде разделенной запятой пары, состоящей из 'Frequency' и вектор, содержащий неотрицательные целочисленные количества. Этот вектор одного размера с векторным x. jэлемент th этого вектора дает числу раз jэлемент th x наблюдался. Значением по умолчанию является одно наблюдение на элемент x.

ecdf игнорирует любой NaN значения в этом векторе частоты. Кроме того, любой NaN значения в y или вектор цензурирования ('Censoring') причина ecdf проигнорировать соответствующие значения в векторе частоты.

Пример: если failurefreq вектор из частот, введите 'Frequency',failurefreq

Типы данных: single | double

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

Например, для 99%-го доверительного интервала, можно задать альфа-значение можно следующим образом.

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

Типы данных: single | double

Тип функции, что ecdf оценивает и возвращается в виде разделенной запятой пары, состоящей из 'Function' и одно из следующих.

'cdf'Значение по умолчанию. Кумулятивная функция распределения.
'survivor'Функция оставшегося в живых.
'cumulative hazard'Совокупная функция опасности.

Пример: 'Function','cumulative hazard'

Индикатор для включения границ в виде разделенной запятой пары, состоящей из 'Bounds' и одно из следующих.

'off'Значение по умолчанию. Задайте, чтобы не использовать границы.
'on' Задайте, чтобы включать границы.

Примечание

Этот аргумент значения имени используется только для графического вывода.

Пример: 'Bounds','on'

Выходные аргументы

свернуть все

Значения функции оценены в точках в x, возвращенный как вектор-столбец.

Отсортированные наблюдаемые точки в векторе данных y, возвращенный как вектор-столбец.

ecdf виды y, удаляет дублирующиеся значения в отсортированном y, и сохраняет результаты в выход x. Выход x включает минимальное значение y как его первые два значения. Эти два значения полезны для графического вывода выходных параметров ecdf использование stairs функция.

Более низкая доверительная граница для выполненной функции, возвращенной как вектор-столбец. ecdf вычисляет доверительные границы с помощью формулы Гринвуда. Они не одновременные доверительные границы.

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

Больше о

свернуть все

Формула Гринвуда

Приближение для отклонения средства оценки Каплана-Мейера.

Оценкой отклонения дают

V(S(t))=S2(t)ti<Tdiri(ridi),

где r, i является номером в опасности во время t i и d i, является количеством отказов во время t i.

Ссылки

[1] Cox, D. R. и Д. Оукс. Анализ данных о выживании. Лондон: Chapman & Hall, 1984.

[2] Беззаконный, J. F. Статистические модели и Методы для Пожизненных Данных. 2-й редактор, Хобокен, NJ: John Wiley & Sons, Inc., 2003.

Расширенные возможности

Представлено до R2006a