問題タブ [proc-r-package]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - plot.roc() 関数を使用した R プロット内の白い余白
ウェブサイトにあるような図を作成しようとしていました。ただし、より基本的な問題が発生しました。R プロット内に削除したい空白があります。これはパッケージを使用していますpROC
。問題を説明する再現可能な例を含めました。
上記のコードは、最終的に次の画像のようになります。
ご覧のとおり、画像には y 軸とプロットの最も左側の部分との間に多くの空白があり、プロットの右側にも同様の空白があります。この問題は、 を使用している場合にのみ発生しましたplot.roc()
。エミュレートしようとしていたプロットを (Web サイトで提供されているコードを使用して) 作成しようとしても、別の画像になりました (最初の段落で説明した画像のコードは以下に含まれています)。
R の設定に問題がある可能性がありますが、コードを 2 台目のコンピューターで実行しても問題は解決しませんでした。誰でも支援できますか?
r - Rとランダムフォレスト:キャレットとpROCは正と負のクラスをどのように扱いますか?
過去数日間、R のランダム フォレストの実装のパフォーマンスと、以下を取得するために利用可能なさまざまなツールを分析してきました。
- AUC
- 感度
- 特異性
したがって、私は2つの異なる方法を使用しました:
- さまざまなカットオフ ポイントでモデルのパフォーマンスを取得するために、pROCライブラリから mroc と coordsを取得します。
- モデルの最適なパフォーマンス (AUC、精度、感度、特異性など) を取得するためのキャレットライブラリからの混乱マトリックス
ポイントは、両方のアプローチにいくつかの違いがあることに気付いたことです。
次のコードを開発しました。
results変数とaccuracyData変数を比較すると、感度と特異度の関係が逆になっていることがわかります。
つまり、confusionMatrix の結果は次のようになります。
しかし、座標計算でそのような感度と特異性を探すと、それらが交換されていることがわかります。
どうやら、感度と特異度はcoordsとconfusionMatrixで反対です。
混乱行列が正のクラスを正しく識別していることを考慮して、感度と特異度のこの適切な解釈を想定しています。
私の質問は次のとおりです。座標に正と負のクラスを私が望むように解釈させる方法はありますか?
r - for ループまたは sapply で ROC 曲線を作成する
何度も検索した後、私の問題に対する答えが見つかりませんでした。for ループまたは sapply を使用して、pROC パッケージで ROC 曲線を生成したいと考えています。
私のデータベースは次のようになります (26 列と 74 行のみ):
ROC 曲線を「手動で」作成できます。
「自動」の場合、私は試しました:
最初の roc 曲線は常に mnT1G:
他のroc曲線を追加します(data$Imgは、別のデータフレームからのすべての画像名(T1G、T01など)です)。私はそれらがすべて青になることを理解しています:
しかし、私はこのエラーが発生します:
roc.default(cor.datT$PA, cor.datT[paste("mn", i, sep = "")] のエラー: 予測子は数値または順序付けされている必要があります。
forループでも同じことが起こります:
列を確認したところ、すべて数値です。私のスクリプトのクラスに何か問題があるのでしょうか?
r - ROCR エラー: 予測の形式が無効です
glmnet から予測を取得した後、「ROCR」パッケージの「予測」関数を使用して tpr、fpr などを取得しようとしていますが、次のエラーが発生します。
glmnet 予測とラベルの両方を出力しましたが、それらは同様の形式であるように見えるため、ここで何が無効なのかわかりません。
コードは次のとおりで、入力はここで入力できます。これは小さなデータセットであり、実行にそれほど時間はかかりません。
あなたの助けに感謝!