@ Tim ♦와 @ gung ♦의 답변은 거의 모든 것을 다루지 만, 그것들을 하나의 것으로 합성하고 더 명확하게 설명하려고 노력할 것입니다.
인용 된 줄의 맥락은 대부분 가장 일반적인 임계 값 형태의 임상 시험을 의미 할 수 있습니다. 질병 , 라고하는 건강 상태를 포함하여 이외의 모든 것을 상상해보십시오 . 우리는 테스트를 위해 대한 좋은 예측을 얻을 수있는 프록시 측정 을 찾고 싶습니다 . (1) 절대 특이성 / 감도를 얻지 못하는 이유는 프록시 수량의 값이 완벽하게 상관되지 않기 때문입니다. 질병 상태는 일반적으로 그것과 만 연관되므로, 개별 측정에서, 우리는 그 양이 대한 임계 값을 초과 할 가능성이 있습니다D D c D D cDDDcDDc개인과 그 반대. 명확성을 위해 가변성에 대한 가우시안 모델을 가정 해 봅시다.
를 프록시 수량으로 사용한다고 가정 해 봅시다 . 경우 좋게 선택 한 후, 보다 높아야 ( 기대 값 연산자이다). 우리가 지금 실현 때 문제가 발생 합성 상황이다 (따라서 인 실제로 심각도의 3 개 등급으로 만들어진) , , 위한 점진적으로 증가하는 기대 값과 각 . 단일 개인의 경우 범주 또는x E [ x D ] E [ x D c ] E D D c D 1 D 2 D 3 x D D c x T D D c x T D x D cxxE[xD]E[xDc]EDDcD1D2D3xDDc범주에서 '테스트'의 확률은 긍정적인지 아닌지 여부는 선택한 임계 값에 따라 다릅니다. 와 개체 를 모두 가지고있는 무작위 샘플을 연구하여 를 선택한다고하자 . 우리 일부 잘못된 긍정과 부정의 원인이됩니다. 개인을 무작위로 선택 하면 녹색 그래프로 주어진 경우 값을 지배 할 확률 과 빨간색 그래프 로 임의로 선택된 사람 의 확률을 결정 합니다.xTDDcxTDxDc
실제로 얻은 숫자는 와 개체 의 실제 숫자에 따라 달라 지지만 결과의 특이성과 감도는 그렇지 않습니다. 를 누적 확률 함수라고 하자 . 그런 다음 질병 의 유병률에 대해 일반적인 경우에 예상되는 2x2 표가 있습니다. 실제로는 결합 모집단에서 테스트가 어떻게 수행되는지 확인하려고 할 때입니다.D c F ( ) p DDDcF()pD
( D c , - ) = ( 1 - p ) ( 1 - F D c ( x T ) ) ( D , - ) = p ( F D ( x T ) ) ( D c , + )
(D,+)=p(1−FD(xT))
(Dc,−)=(1−p)(1−FDc(xT))
(D,−)=p(FD(xT))
( D c , + ) = ( 1 − p )∗FDc(xT)
실제 숫자는 의존하지만 감도와 특이성은 독립적입니다. 그러나 둘 다 및 에 의존합니다 . 따라서 이들에 영향을 미치는 모든 요소가 이러한 메트릭을 확실히 변경합니다. 예를 들어, ICU에서 근무하는 경우 는 로 대체되고 외래 환자에 대해 이야기하는 경우 로 대체됩니다 . 병원에서 유병률이 다른 것은 별개의 문제입니다.피피에프디에프D c에프디에프D 3에프D 1그러나 임계 값이 정의 된 모델이 외래 환자 또는 입원 환자 인 것처럼 보이는 집단에 적용 할 수 없었기 때문에 민감도와 특이도를 다르게하는 것은 다른 보급률이 아니라 분포가 다릅니다 . 당신은 가서 분해 할 수 있습니다 의 입원 서브 파트를 변경할 수 없기 여러 부분 집단에서 도 제기하여야한다 기타 이유로 (대부분의 프록시도 있기 때문에 다른 심각한 조건에 '상승')로. 파단의 의 그 반면에 하위 집단 인구하면, 감도의 변화를 설명 인구의 변화에 대응하여 (특이성의 변화를 설명 및디씨디씨엑스디디씨에프디에프D c ) .This 복합 무엇 그래프는 실질적으로 포함한다. 각 색상은 실제로 고유 한 를 가지므로 원래 감도 및 특이도가 계산 된 와 다른 경우 이러한 메트릭이 변경됩니다.디에프에프
예
10000 Dc, 500,750,300 D1, D2, D3을 가진 11550의 모집단을 가정하십시오. 주석 처리 된 부분은 위의 그래프에 사용 된 코드입니다.
set.seed(12345)
dc<-rnorm(10000,mean = 9, sd = 3)
d1<-rnorm(500,mean = 15,sd=2)
d2<-rnorm(750,mean=17,sd=2)
d3<-rnorm(300,mean=20,sd=2)
d<-cbind(c(d1,d2,d3),c(rep('1',500),rep('2',750),rep('3',300)))
library(ggplot2)
#ggplot(data.frame(dc))+geom_density(aes(x=dc),alpha=0.5,fill='green')+geom_density(data=data.frame(c(d1,d2,d3)),aes(x=c(d1,d2,d3)),alpha=0.5, fill='red')+geom_vline(xintercept = 13.5,color='black',size=2)+scale_x_continuous(name='Values for x',breaks=c(mean(dc),mean(as.numeric(d[,1])),13.5),labels=c('x_dc','x_d','x_T'))
#ggplot(data.frame(d))+geom_density(aes(x=as.numeric(d[,1]),..count..,fill=d[,2]),position='stack',alpha=0.5)+xlab('x-values')
Dc, D1, D2, D3 및 복합 D를 포함한 다양한 모집단에 대한 x- 평균을 쉽게 계산할 수 있습니다.
mean(dc)
mean(d1)
mean(d2)
mean(d3)
mean(as.numeric(d[,1]))
> mean(dc) [1] 8.997931
> mean(d1) [1] 14.95559
> mean(d2) [1] 17.01523
> mean(d3) [1] 19.76903
> mean(as.numeric(d[,1])) [1] 16.88382
원래 테스트 사례에 대해 2x2 테이블을 얻으려면 먼저 데이터를 기반으로 임계 값을 설정합니다 (실제 사례에서는 @gung이 보여주는 것처럼 테스트를 실행 한 후에 설정 됨). 어쨌든 13.5의 임계 값을 가정하면 전체 모집단에서 계산할 때 다음과 같은 감도와 특이성을 얻습니다.
sdc<-sample(dc,0.1*length(dc))
sdcomposite<-sample(c(d1,d2,d3),0.1*length(c(d1,d2,d3)))
threshold<-13.5
truepositive<-sum(sdcomposite>13.5)
truenegative<-sum(sdc<=13.5)
falsepositive<-sum(sdc>13.5)
falsenegative<-sum(sdcomposite<=13.5)
print(c(truepositive,truenegative,falsepositive,falsenegative))
sensitivity<-truepositive/length(sdcomposite)
specificity<-truenegative/length(sdc)
print(c(sensitivity,specificity))
> print(c(truepositive,truenegative,falsepositive,falsenegative)) [1]139 928 72 16
> print(c(sensitivity,specificity)) [1] 0.8967742 0.9280000
외래 환자와 함께 일하고 있고 D1 비율에서만 병에 걸린 환자를 받거나 D3 만받는 ICU에서 일하고 있다고 가정 해 봅시다. (보다 일반적인 경우에는 Dc 구성 요소도 분리해야합니다.) 감도와 특이성은 어떻게 달라 집니까? 유병률을 변경함으로써 (즉, 어느 경우에 속하는 환자의 상대적인 비율을 변경함으로써, 우리는 특이성과 민감성을 전혀 변경하지 않습니다.이 유병률은 또한 분포가 변함에 따라 변합니다)
sdc<-sample(dc,0.1*length(dc))
sd1<-sample(d1,0.1*length(d1))
truepositive<-sum(sd1>13.5)
truenegative<-sum(sdc<=13.5)
falsepositive<-sum(sdc>13.5)
falsenegative<-sum(sd1<=13.5)
print(c(truepositive,truenegative,falsepositive,falsenegative))
sensitivity1<-truepositive/length(sd1)
specificity1<-truenegative/length(sdc)
print(c(sensitivity1,specificity1))
sdc<-sample(dc,0.1*length(dc))
sd3<-sample(d3,0.1*length(d3))
truepositive<-sum(sd3>13.5)
truenegative<-sum(sdc<=13.5)
falsepositive<-sum(sdc>13.5)
falsenegative<-sum(sd3<=13.5)
print(c(truepositive,truenegative,falsepositive,falsenegative))
sensitivity3<-truepositive/length(sd3)
specificity3<-truenegative/length(sdc)
print(c(sensitivity3,specificity3))
> print(c(truepositive,truenegative,falsepositive,falsenegative)) [1] 38 931 69 12
> print(c(sensitivity1,specificity1)) [1] 0.760 0.931
> print(c(truepositive,truenegative,falsepositive,falsenegative)) [1] 30 944 56 0
> print(c(sensitivity3,specificity3)) [1] 1.000 0.944
요약하면, 모집단의 평균 x가 변하는 민감도의 변화 (특이성은 인구 집단에서 Dc 모집단을 구성한 경우 유사한 추세를 따를 것입니다)를 나타내는 그림입니다.
df<-data.frame(V1=c(sensitivity,sensitivity1,sensitivity3),V2=c(mean(c(d1,d2,d3)),mean(d1),mean(d3)))
ggplot(df)+geom_point(aes(x=V2,y=V1),size=2)+geom_line(aes(x=V2,y=V1))
- 프록시가 아닌 경우 기술적으로 100 % 특이성과 민감도를 갖습니다. 예를 들어 , 간 생검에 대해 가 특정 객관적으로 정의 된 병리학 적 그림을 갖는 것으로 정의하면 간 생검 검사가 금 본위제가되며 민감도 자체에 대해 측정되므로 100 %가 산출됩니다.디