Адаптированная версия чувствительности / специфичности для выявления заболеваний - PullRequest
0 голосов
/ 07 октября 2018

У меня есть данные, собранные с датчиков для выявления заболеваний у нескольких людей.Каждый человек имеет известный статус заболевания (помеченный Actual в таблице ниже) для каждого дня и прогнозируемый статус заболевания (Predicted в таблице ниже) из уравнений прогнозирования, выполненных на данных датчика.Я пытаюсь рассчитать чувствительность / специфичность из этого.У каждого человека может быть более одного случая заболевания, и случаи могут длиться несколько дней.Датчик достаточно точен при обнаружении заболевания в первый или второй день заболевания.В некоторых случаях данные датчика могут прогнозировать заболевание за день до наблюдения случая.

Например, в приведенной ниже таблице день заболевания предсказывается по данным датчика за день до того, как произошло заболевание.Здоровый день обозначается 0, а больной / больной - 1. Должно быть 3 четких (здоровых) дня между зарегистрированными событиями болезни, чтобы его можно было классифицировать как новое событие, поэтому дни 41 и 42 являются частьюто же событие, что и дни 37-39.Это должно быть классифицировано как истинно положительный результат, поскольку он мог предсказать событие болезни.

 Day   Actual   Predicted  
 ----- -------- ----------- 
   34        0           0  
   35        0           0  
   36        0           1  
   37        1           0  
   38        1           0  
   39        1           0  
   40        0           0  
   41        1           0  
   42        1           0  
   43        0           0  
   44        0           0  

Проблема с «традиционным» способом выполнения чувствительности и специфичности (я делал это с использованием confusionmatrix вПакет каретки R) состоит в том, что он смотрит на каждый день индивидуально, а не на индивидуальной основе.Это дает очень плохие результаты по чувствительности, поскольку случаи могут длиться несколько дней, тогда как на самом деле датчик способен обнаружить событие заболевания в первый день заболевания.Я хотел бы классифицировать любые случаи, когда Actual и Predicted находятся в согласии, даже если только в течение 1 дня на случай заболевания.

Есть ли способ сделать это, используя адаптированную версию матрицы путаницы (если она существует)?Или другой тест будет более подходящим?

...