2017-04-17 6 views
1

私は何かがイエスである(1)または無(0)、のデータがで構成されて言わせないかどうかを予測する手助けするために、いくつかのスコアを生成した:陽性予測値(PPV)のプロットと分類のためのさまざまなカットオフポイントを生成するにはどうすればよいですか?

scores = c(10:20) 

response = c(0,0,1,0,1,0,1,1,0,1,1) 

mydata = data.frame(scores, response) 

私はAUCを与えるROC分析を、行うことができます.77:

roc(response = mydata$response, predictor = mydata$scores) 

ここで、さまざまなカットオフを選択するとどうなるのですか。私はx軸(13,14,15,16,17と言う)とPPVをy軸にカットオフしたいと思います。これを行う良い方法は何ですか?どのような機能/パッケージが必要ですか?

+0

これに便利なパッケージには、 'ROCR'と' verification'があります。 – ulfelder

答えて

1

私はpROCパッケージ*をベースにした回答をします。 ROCRパッケージを使用して同様の結果を得ることも可能です。

coords関数を使用します。この関数は、特定のしきい値でいくつかの共通統計を計算できます。たとえば、すべてのしきい値でPPVを得るためには、次の操作を実行できます興味のしきい値によって"all"を交換し

plot(t(coordinates)) 

をあなたはそれらの値をプロットすることができ

library(pROC) 
r <- roc(response = response, predictor = scores) 
coordinates <- coords(r, x = "all", input = "threshold", ret = c("threshold", "ppv")) 

coordinates <- coords(r, x = c(13, 14, 15, 16, 17), input = "threshold", ret = c("threshold", "ppv")) 

*免責事項:私はpROCパッケージの作成者です。

+0

著者からの返事を得るには素晴らしい方法です!いくつかの重要なもののためにあなたの仕事を使用して、とてもありがとう! – CineyEveryday

関連する問題