Форум врачей-аспирантов

Здравствуйте, гость ( Вход | Регистрация )

4 страниц V   1 2 3 > »   
Добавить ответ в эту темуОткрыть тему
> ROC-анализ, определение чувствительности и специфичности метода
Татьяна24
сообщение 30.06.2008 - 19:50
Сообщение #1


Дух форума
*

Группа: Пользователи
Сообщений: 10
Регистрация: 18.10.2007
Пользователь №: 4453



Объясните, пожалуйста, как вычислить все показатели необходимые для рассчета.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
плав
сообщение 30.06.2008 - 20:53
Сообщение #2


Дух форума
*

Группа: Пользователи
Сообщений: 1013
Регистрация: 4.10.2006
Пользователь №: 1933



Зависит от того, в какой форме данные. Если совсем просто:
Сортируем данные в порядке возрастания интересующего диагностического параметра (например, холестерина). Для каждого значения параметра записываем число пациентов имеющих значение выше оного и число контролей, имеющих значение выше оного. Вычисляем процент к общей численности пациентов и контролей (это чувствительность и % ложноположительных результатов). Строим график зависимости чувствительности (Se) от % ложноположительных реузльтатов(FP). Это и есть характеристическая (ROC) кривая.
Площадь под кривой определяем при помощи правила трапеции (последующее значение FP минус предыдущее значение FP умноженное на полусумму последущего и предыдущего значения Se). Суммируем полученные значения и получаем площадь под кривой.
Если не хочется возиться таким методом и хочется рассчитать ошибку площади, то надо пользоваться формулами, например, приведенными в другом посте: http://forum.disser.ru/index.php?showtopic=1681
Я там сознательно обсуждение вопроса оценки площади AUC ROC вытащил в отдельную тему.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 1.07.2008 - 17:00
Сообщение #3


Дух форума
*

Группа: Пользователи
Сообщений: 964
Регистрация: 10.04.2007
Из: Россия
Пользователь №: 4040



Цитата(плав @ 30.06.2008 - 20:53) *
Зависит от того, в какой форме данные. Если совсем просто:


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


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
плав
сообщение 1.07.2008 - 19:17
Сообщение #4


Дух форума
*

Группа: Пользователи
Сообщений: 1013
Регистрация: 4.10.2006
Пользователь №: 1933



На самом деле довольно много материала просто в Интернете сейчас висит, я же приведу ссылки на пару книг:
Hosmer & Lemeshow, Applied Logistic Regression, 2000 раздел 5.2.4
Bland, An introduction to medical statistics, 2000 (p277)
Armitage & Berry раздел 19.9
Но для россиян наилучшим введением является книга В.Власова "Эффективность диагностических исследований", М., Медицина, 1988 (глава 4).
Есть немного про общую теорию диагностики и ROC кривые и в переводе книги Флетчера Клиническая эпидемиология. Но я бы все-таки рекомендовал именно книгу Власова.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
DrgLena
сообщение 1.07.2008 - 21:58
Сообщение #5


Дух форума
*

Группа: Пользователи
Сообщений: 1318
Регистрация: 27.11.2007
Пользователь №: 4573



Еще моожно посмотреть
1. Biostatistics. A Methodology for the Health Sciences
GERALD VAN BELLE
LLOYD D. FISHER
PATRICK J. HEAGERTY
THOMAS LUMLEY
Washington 2004, р. 888. (с. 559-572)
2. Петри А., Сэбин К. Наглядная статистика в медицине. М. 2003, с. 93-95.
3. Реброва О.Ю. Статистический анализ медицинских данных. 2002, с. 247-250. Но здесь очень уж скромно, Плав в ответе на этот пост дал более ясное представление, что такое ROC.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
nokh
сообщение 1.07.2008 - 22:35
Сообщение #6


Дух форума
*

Группа: Пользователи
Сообщений: 1061
Регистрация: 13.01.2008
Из: Челябинск
Пользователь №: 4704



Книга В.Власова "Эффективность диагностических исследований" с разрешения автора выложена на сайте общества специалистов доказательной медицины:
http://www.osdm.org/modules.php?name=Files...8&pagenum=2
Требуется регистрация. Книга - 9 архивов по 1,4 Мб сканов неважного качества в формате tif.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 2.07.2008 - 10:49
Сообщение #7


Дух форума
*

Группа: Пользователи
Сообщений: 964
Регистрация: 10.04.2007
Из: Россия
Пользователь №: 4040



Цитата(nokh @ 1.07.2008 - 22:35) *
Книга В.Власова "Эффективность диагностических исследований" с разрешения автора выложена на сайте общества специалистов доказательной медицины:
http://www.osdm.org/modules.php?name=Files...8&pagenum=2
Требуется регистрация. Книга - 9 архивов по 1,4 Мб сканов неважного качества в формате tif.

Спасибо большое. Хотя в библиотеках она имеется, электронным вариантом пользоваться предпочтительнее.

Качество, действительно, неважное. Первые 2 главы - один лист на скан, остальные - 2 листа на скан. Нет также предисловия и [нормального] оглавления. Пользоваться трудно.

Раз уж автор разрешил, отсканировал недостающее из печатной книги, да собрал в 2 файла PDF (если в один - много работы с разделением "сиамских близнецов" из 3-6 глав).

Книга, действительно, стоящая. Понятно, информативно.


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
плав
сообщение 2.07.2008 - 11:30
Сообщение #8


Дух форума
*

Группа: Пользователи
Сообщений: 1013
Регистрация: 4.10.2006
Пользователь №: 1933



Если будете где-то новый скан размещать, лучше спросите у Василия Викторовича, я думаю, он разрешит, но лучше получить разрешение...
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 3.07.2008 - 12:29
Сообщение #9


Дух форума
*

Группа: Пользователи
Сообщений: 964
Регистрация: 10.04.2007
Из: Россия
Пользователь №: 4040



Цитата(плав @ 30.06.2008 - 20:53) *
Сортируем данные в порядке возрастания интересующего диагностического параметра (например, холестерина). Для каждого значения параметра записываем число пациентов имеющих значение выше оного и число контролей, имеющих значение выше оного. Вычисляем процент к общей численности пациентов и контролей (это чувствительность и % ложноположительных результатов). Строим график зависимости чувствительности (Se) от % ложноположительных реузльтатов(FP). Это и есть характеристическая (ROC) кривая.
Площадь под кривой определяем при помощи правила трапеции (последующее значение FP минус предыдущее значение FP умноженное на полусумму последущего и предыдущего значения Se). Суммируем полученные значения и получаем площадь под кривой.

Не могу разделить воодушевления DrgLena по поводу ясности показанного представления относительно ROC анализа, хотя понимание автором поста изложенного материала ни малейшего сомнения не вызывает. Тем более не могу утверждать этого относительно изложения ROC в книге Ребровой.

Поэтому неудивительно, что исследователи шарахаются от новых методов, просто не понимая их. А на самом-то деле алгоритм элементарен. Кто бы внятно описал.


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
DrgLena
сообщение 3.07.2008 - 13:12
Сообщение #10


Дух форума
*

Группа: Пользователи
Сообщений: 1318
Регистрация: 27.11.2007
Пользователь №: 4573



Конечно, по Ребровой не научишься, ее книга ориентирована на Statistica, но там нет этого анализа, но по англоязычным источникам вполне возможно, сейчас уже много в инете информации. Полав очень хорошо в форуме все изложил, коротко и ясно и ручками можно все посчитать. Оптимизм потому, что наш совет и наш журнал уже не задает вопросы, концентрация или возраст по оси "х" или "у" в ROC кривой. Преимущества вероятностных методов оценки перед сравнением средних арифметических, по моему, очевидны. Доказательная медицина ориентирована на создание именно вероятностных оценок как риска, так и эффекта воздействия.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
плав
сообщение 3.07.2008 - 20:17
Сообщение #11


Дух форума
*

Группа: Пользователи
Сообщений: 1013
Регистрация: 4.10.2006
Пользователь №: 1933



Цитата(Игорь @ 3.07.2008 - 13:29) *
Не могу разделить воодушевления DrgLena по поводу ясности показанного представления относительно ROC анализа, хотя понимание автором поста изложенного материала ни малейшего сомнения не вызывает. Тем более не могу утверждать этого относительно изложения ROC в книге Ребровой.

Поэтому неудивительно, что исследователи шарахаются от новых методов, просто не понимая их. А на самом-то деле алгоритм элементарен. Кто бы внятно описал.

Честно говоря, не понял, что я тут непонятного написал, ну да ладно - самому всегда не видно, для этого есть даже умное название "профессиональный кретинизм" (это я про себя smile.gif ). Попробую с примером.
Итак, у нас есть набор значений, который мы измерили в группе больных и здоровых (например, ХС в мг/дл). Теперь мы сортируем значения без учета принадлежности к группе в порядке возрастания, например так:
160 0
170 1
172 0
180 0
190 1
200 0
210 0
220 1
230 0
240 1
250 1
250 0
260 1
270 1
280 1
Всего у нас 8 больных и 7 здоровых. Теперь начинаем считать, сколько больных имеет значение выше порогового и сколько здоровых тоже имеют его выше или равным пороговому (т.е. сколько у нас будет истинно положительных результатов теста - на больных и сколько ложно-положительных - на здоровых, если мы используем эту границу). Начнем со 160. Выше все больные (100%) и все здоровые (100%). Соответственно, первая точка на графике будет иметь координаты 1,1
Далее, берем значение 170 - вышего него 100% больных и 6/7 (85,7%) здоровых. Итак, координаты второй точки (0,857, 1)
Для значения 172 получаем 87,5% больных и 85,7% здоровых. Координаты третьей точки (0,857, 0,875)
Продолжаем этот ряд

Код
160 0                7    1,000        1    1
170 1    1    8    1                0,857    1
172 0                6    0,857        0,857    0,875
180 0                5    0,714        0,714    0,875
190 1    1    7    0,875                0,571    0,875
200 0                4    0,571        0,571    0,75
210 0                3    0,429        0,429    0,75
220 1    1    6    0,75                0,286    0,75
230 0                2    0,286        0,286    0,625
240 1    1    5    0,625                0,143    0,625
250 1    1    4    0,5                0,143    0,5
250 0                1    0,143        0,143    0,375
260 1    1    3    0,375                0    0,375
270 1    1    2    0,25                0    0,25
280 1    1    1    0,125                0    0,125


Последние две колонки содержат координаты, необходимые для построения ROC-кривой
Оценка ее площади - это уже другая задача, для сравнения, например, можно было бы использовать интегрирование взвешиванием - метод не ахти какой точный, зато никакой математики не требуется - на миллиметровке строим кривые, затем аккуратно вырезаем их ножницами и взвешиваем на точных весах. Отношение масс и есть отношение площадей.
Если же хочется использовать, например, Эксель, то можно просто ввести формулу, как я описывал выше:
=(E31+E32)/2*(D31-D32), т.е. полусумма значений по оси Y умноженная на разность значений по оси X
Для примера выше получаем:

Se FP Площадь
1 1 0,143
0,857 1 0,000
0,857 0,875 0,125
0,714 0,875 0,125
0,571 0,875 0,000
0,571 0,75 0,107
0,429 0,75 0,107
0,286 0,75 0,000
0,286 0,625 0,089
0,143 0,625 0,000
0,143 0,5 0,000
0,143 0,375 0,054
0 0,375 0,000
0 0,25 0,000
0 0,125 0,000

Суммируя значения в столбце Площадь получаем 0,75, что и является в данном случае AUC ROC.
Далее, при желании, используя приведенные в другом посту формулы можно оценить AUC ROC:

з б
160 0 1 1
170 1 2 2
172 0 3 3
180 0 4 4
190 1 5 5
200 0 6 6
210 0 7 7
220 1 8 8
230 0 9 9
240 1 10 10
250 1 11 11
250 0 12 12
260 1 13 13
270 1 14 14
280 1 15 15
Сумма рангов
42 78
U 42 14
AUC 0,75
Q1 0,6
Q2 0,642857143
se2 0,017410714
se 0,131949666

Вначале рассчитываем суммы рангов и оцениваем U-критерий Мэнна-Уитни. Берем большее значение U и делим на произведение численностей групп (в данном случае величина - сюрприз! - получается равной 0,75)
Сами формулы продублирую
Q1 = AUC / (2 - AUC);
Q2 = 2 * AUC^2 / (1 + AUC);
se2 = (AUC * (1 - AUC) + (N1 - 1) * (Q1 - AUC^2) + (N2 - 1) * (Q2 - AUC^2)) / (N1 * N2);
SE_auc = squareRoot (se2);
Их выражения в Экселе (в ячейке С49 - сумма рангов критерий):
C50 U =7*8+(7*(7+1))/2-C49
C51 AUC =C50/(7*8)
C52 Q1 =C51/(2-C51)
C53 Q2 =2*C51^2/(1+C51)
C54 se2 =(C51*(1-C51)+(7-1)*(C52-C51^2)+(8-1)*(C53-C51^2))/(7*8)
C55 se =КОРЕНЬ(C54)
Я думаю, что очевидно, что 7 и 8 - это численности здоровых и больных в вышеописанном примере.

Поскольку все таблицеподобные примеры вверху поехали, креплю экселевский файл со всеми расчетами и примером. пытался как-то исправить - но мои пробелы переделывает в табуляции, которые затем считает одним пробелом...
Прикрепленные файлы
Прикрепленный файл  ROC.rar ( 2,86 килобайт ) Кол-во скачиваний: 870
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
DrgLena
сообщение 4.07.2008 - 00:23
Сообщение #12


Дух форума
*

Группа: Пользователи
Сообщений: 1318
Регистрация: 27.11.2007
Пользователь №: 4573



Блестяще! Добавить можно только график самой кривой ROC и значение чувствительности и специфичности для оптимальной точки >230, se=62,5%; sp=85,7%
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 4.07.2008 - 11:19
Сообщение #13


Дух форума
*

Группа: Пользователи
Сообщений: 964
Регистрация: 10.04.2007
Из: Россия
Пользователь №: 4040



Удалено автором.


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
плав
сообщение 4.07.2008 - 21:48
Сообщение #14


Дух форума
*

Группа: Пользователи
Сообщений: 1013
Регистрация: 4.10.2006
Пользователь №: 1933



Цитата(Игорь @ 4.07.2008 - 12:19) *
Загрузил таблицу. Посмотрел. Несколько замечаний. Что это не мои измышления, привожу ссылки.

Итак:

1. Вместо Se должно быть (1 - Sp).
2. То, что плав называет FP, должно быть Se.

Это стандартные обозначения - не нужно их менять. Источники: Власов, Реброва.

И ранжировать (сортировать) пороги отсечения я бы рекомендовал от большего к меньшему, а не как у плав - от меньшего к большему. Иначе:

1. График (ROC) строится как бы "наоборот", что не совсем привычно.
2. Площадь (AUC) по стандартной формуле трапеций получается той же, но со знаком "минус", что тоже неудобно.

Источник: Паклин (baselab).


Прежде, чем кого-то исправлять неплохо бы внимательно прочитать пост (иначе возникают сомнения в мотивах критикующего).
Во всех источниках и в моем примере, по оси Y идет чувствительность, а по оси X - частота ложноположительных результатов (FP).
Более того, в моем примере четко прописаны координаты точек (они делаются в формате (x,y)).
График ROC не может строиться "наоборот" поскольку это набор точек, и наносите вы точки слева направо или справо налево абсолютно все равно.
А вот где Вы в примере нашли отрицательную AUC ROC? Если Вы скачали файл, то там нигде нет минуса или изменения знака. Ни в одной формуле. Зачем тогда придумывать?
Вообщем хотите описать методику расчета AUC ROC как Вам кажется лучше - пожалуйста, для этого форум и сделан. А вот пытаться доказать, что вокруг все ничего не понимают - не стоит.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
DrgLena
сообщение 5.07.2008 - 01:57
Сообщение #15


Дух форума
*

Группа: Пользователи
Сообщений: 1318
Регистрация: 27.11.2007
Пользователь №: 4573



Игорь, по видимому, не верно определил больных и здоровых в этом примере. Принято кодировать тех, у кого тест положительный, т.е. больных "1", а здоровых "0", как у Плава в примере. Чувствительность и специфичность относится к этим понятиям. Если поменять кодировку, площадь под кривой будет хоть и не отрицательной, но меньше 0,5 (0,24 в этом примере). Плав дал ручной расчет, совпадающий с MedCalc (Trapezoidal (Wilcoxon) area). Присоединен файл с документацией по этому модулю и решением примера Плава в NCSS может пригодится для расширения познаний.
Прикрепленные файлы
Прикрепленный файл  Игорю2.RTF ( 91,9 килобайт ) Кол-во скачиваний: 852
Прикрепленный файл  Roc.pdf ( 121,26 килобайт ) Кол-во скачиваний: 1055
Прикрепленный файл  ROC2.pdf ( 113,36 килобайт ) Кол-во скачиваний: 1185
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 

4 страниц V   1 2 3 > » 
Добавить ответ в эту темуОткрыть тему