RでROC曲線を描いたりAUCを求めたりできるパッケージはたくさんあります。例えばEpiパッケージ,epicalcパッケージ,ROCRパッケージ,DiagnosisMedパッケージ,BioConductorのROCパッケージなどです。 roc曲線分析は、病気の診断のための検査を分析するために使われる。真実の分類と、真実の分類を見分ける検査結果を使って、どのレベルより上だと病気とするか?決める分析だ。胃がんや大腸がんを見つけるには、内視鏡をしないと見つけられないが、簡単な血液検査で見つ RによるROC曲線. rでのroc解析:rocrパッケージを使ったroc曲線とaucの求め方 研究でROC解析を行う必要があり、Rでどうやったらできるのか調べてみました。 そうしたところ、 ROCR というパッケージが公開されており、比較的簡単にROC解析を行い、グラフを作成できることがわかりました。 グラフをPNG形式で保存するには、次のように行うことで、roc-curve.pngという名前でワーキングディレクトリに保存されます。カットオフ値を少しずつずらした時に、TP, FP, FN, TNは変わっていきますので、その一覧を表に出力しましょう。これで、下図のような感度、特異度の曲線がsens-spec-curve.pngという名前で保存されます。今、総数は、rocdataの行数を求めればよいですから、nrow(rocdata)で求められますROCRのステップ2はperformanceです。ここでは、感度、すなわち真陽性率 (TP/(TP+FN)で定義)と、1-特異度、すなわち偽陽性率(FP/(FP+TN)で定義)を求めます。以下のようにタイプします。ROCRはRを立ち上げた後に、library(ROCR)で起動できます。ここでtprはtrue positive rateを、fprはfalse positive rateを意味します。既にRはインストールされているとします。Ubuntuの場合、ROCRパッケージはapt経由で簡単に入手できます。感度と特異度の曲線も簡単に書けます。predictionまで行った後に、次のようにします。ここで、何が行われているかというと、データを大きい順にソートし、真陽性(TP)、偽陽性(FP)、偽陰性(FN)、真陰性(TN) の数を算出します。Cutoff TP FP FN TN Sensitivity Specificity Accuracyとなりますので、該当するところをみると、感度70%、特異度85%、正診率77.5%達成できるということがわかりました。
roc曲線応用編 「臨床医のためのrコマンダーによる医学統計解析マニュアル」ではepiパッケージを用いた簡単なroc曲線の描出方法をご説明させて頂きました。 RによるROC分析法 公衆衛生学教室セミナー 2007 年1 月11 日 中澤 港 1 ROC 分析とは ROC 曲線とは,Receiver Operating Characteristic 曲線の略である⁄1。集団を対象に,すばやく実施可能な 方法で,疾病を暫定的に識別することをスクリーニングというが,いくつかのスクリーニング方法があるときに, ここによるとあんまり尤もらしい曲線じゃないけどね! Epiパッケージを使うともっとすごい require ( Epi ) Epi :: ROC ( d2 $ LHratio , d2 $ ACS , plot = "ROC" )