Ich habe die Daten eines Tests, mit dem sich normale und Tumorzellen unterscheiden lassen. Laut ROC-Kurve sieht es für diesen Zweck gut aus (Fläche unter der Kurve ist 0,9):
Meine Fragen sind:
- Wie wird der Grenzwert für diesen Test und sein Konfidenzintervall bestimmt, in dem die Messwerte als nicht eindeutig beurteilt werden sollten?
- Was ist der beste Weg, dies zu visualisieren (mit
ggplot2
)?
Das Diagramm wird mit ROCR
und ggplot2
-Paketen gerendert :
#install.packages("ggplot2","ROCR","verification") #if not installed yet
library("ggplot2")
library("ROCR")
library("verification")
d <-read.csv2("data.csv", sep=";")
pred <- with(d,prediction(x,test))
perf <- performance(pred,"tpr", "fpr")
auc <-performance(pred, measure = "auc")@y.values[[1]]
rd <- data.frame(x=perf@x.values[[1]],y=perf@y.values[[1]])
p <- ggplot(rd,aes(x=x,y=y)) + geom_path(size=1)
p <- p + geom_segment(aes(x=0,y=0,xend=1,yend=1),colour="black",linetype= 2)
p <- p + geom_text(aes(x=1, y= 0, hjust=1, vjust=0, label=paste(sep = "", "AUC = ",round(auc,3) )),colour="black",size=4)
p <- p + scale_x_continuous(name= "False positive rate")
p <- p + scale_y_continuous(name= "True positive rate")
p <- p + opts(
axis.text.x = theme_text(size = 10),
axis.text.y = theme_text(size = 10),
axis.title.x = theme_text(size = 12,face = "italic"),
axis.title.y = theme_text(size = 12,face = "italic",angle=90),
legend.position = "none",
legend.title = theme_blank(),
panel.background = theme_blank(),
panel.grid.minor = theme_blank(),
panel.grid.major = theme_line(colour='grey'),
plot.background = theme_blank()
)
p
data.csv enthält die folgenden Daten:
x;group;order;test
56;Tumor;1;1
55;Tumor;1;1
52;Tumor;1;1
60;Tumor;1;1
54;Tumor;1;1
43;Tumor;1;1
52;Tumor;1;1
57;Tumor;1;1
50;Tumor;1;1
34;Tumor;1;1
24;Normal;2;0
34;Normal;2;0
22;Normal;2;0
32;Normal;2;0
25;Normal;2;0
23;Normal;2;0
23;Normal;2;0
19;Normal;2;0
56;Normal;2;0
44;Normal;2;0
quelle
Meiner Meinung nach gibt es mehrere Abschaltoptionen. Sie können Sensitivität und Spezifität unterschiedlich gewichten (zum Beispiel ist es für Sie wichtiger, einen hochsensitiven Test durchzuführen, obwohl dies einen niedrigen spezifischen Test bedeutet. Oder umgekehrt).
Wenn Empfindlichkeit und Spezifität für Sie gleich wichtig sind, besteht eine Möglichkeit zur Berechnung des Cutoff darin, den Wert zu wählen, der den euklidischen Abstand zwischen Ihrer ROC-Kurve und der oberen linken Ecke Ihres Diagramms minimiert.
Eine andere Möglichkeit besteht darin, den maximierten Wert (Empfindlichkeit + Spezifität - 1) als Grenzwert zu verwenden.
Leider habe ich keine Referenzen für diese beiden Methoden, da ich sie von Professoren oder anderen Statistikern gelernt habe. Ich habe nur gehört, dass ich die letztgenannte Methode als Youden-Index bezeichnet habe [1].
[1] https://en.wikipedia.org/wiki/Youden%27s_J_statistic
quelle
Widerstehen Sie der Versuchung, eine Grenze zu finden. Sofern Sie nicht über eine vordefinierte Funktion für Nutzen / Verlust / Kosten verfügen, steht eine Abschaltung im Widerspruch zu einer optimalen Entscheidungsfindung. Und eine ROC-Kurve ist für dieses Problem irrelevant.
quelle
Mathematisch gesehen benötigen Sie eine andere Bedingung, um den Cut-Off zu lösen.
Sie können den Punkt von @ Andrea folgendermaßen übersetzen: "Externes Wissen über das zugrunde liegende Problem verwenden".
Beispielbedingungen:
Für diese Anwendung benötigen wir Sensitivität> = x und / oder Spezifität> = y.
Ein falsches Negativ ist 10 x so schlecht wie ein falsches Positiv. (Das würde Ihnen eine Änderung des nächstgelegenen Punkts zur idealen Ecke geben.)
quelle
Visualisieren Sie die Genauigkeit gegenüber dem Cutoff. Weitere Informationen finden Sie in der ROCR-Dokumentation und in der sehr schönen Präsentation derselben.
quelle
Was noch wichtiger ist - es gibt sehr wenige Datenpunkte hinter dieser Kurve. Wenn Sie sich für einen Kompromiss zwischen Empfindlichkeit und Spezifität entscheiden, empfehle ich Ihnen dringend, die Kurve und die daraus resultierende Cutoff-Zahl zu booten. Möglicherweise stellen Sie fest, dass Ihre geschätzte Höchstgrenze sehr ungewiss ist.
quelle