問題タブ [r]
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 - Rデンドログラムでエッジに色を付けたり四角形を正しく描画したりするにはどうすればよいですか?
R のと関数を使用して、このデンドログラムを生成しました。hclust()as.dendrogram()plot.dendrogram()
dendrapply()関数とローカル関数を使用して葉に色を付けましたが、正常に機能しています。
ノードのセット (たとえば、ツリーの右下隅にある" _+v\_stat5a\_01_" と " "のクラスター) が有意または重要かどうかを示す統計テストの結果があります。_+v\_stat5b\_01_
dendrapply()また、重要な葉を含むデンドログラム内の正確なノードを見つけるために使用できるローカル関数もあります。
私はどちらかをしたいです(例に従って):
_+v\_stat5a\_01_" " と " "を結ぶエッジに色を付け_+v\_stat5b\_01_ます。また、- " " と " "の
rect()周りを描く_+v\_stat5a\_01__+v\_stat5b\_01_
次のローカル関数があります (「nodes-in-leafList-match-nodes-in-clusterList」条件の詳細は重要ではありませんが、重要なノードが強調表示されます)。
このifブロック内から を呼び出してみdendrapply(n, markEdges)ましたが、うまくいきませんでした:
_+v\_stat5a\_01_私の理想的な例では、「 」と「 」をつなぐエッジ_+v\_stat5b\_01_は破線で赤色になります。
私はまたrect.hclust()、このifブロック内で使用しようとしました:
しかし、結果は水平樹形図 (つまり、水平ラベルを持つ樹形図) では機能しません。以下に例を示します(右下隅の赤いストライプに注意してください)。生成されるものの次元について何かが正しくなくrect.hclust()、それがどのように機能するのかわかりません。自分のバージョンを書くことができます。
edgePar取得または適切に動作するためのアドバイス、または独自の同等のものrect.hclust()を作成できるようにするためのアドバイスに感謝します。rect.hclust()
アップデート
この質問をして以来、パラメーターを計算してオブジェクトgetAnywhere(rect.hclust())を描画する関数コードを取得していました。rectこの関数のカスタム バージョンを作成して、水平および垂直の葉を処理し、 で呼び出しますdendrapply()。
ただし、 の一部を削除するある種のクリッピング効果がありrectます。水平の葉 (木の右側に描かれる葉) の場合、rectいずれかの右端が消えるか、または の他の 3 つの辺の境界幅よりも細くなりrectます。垂直の葉 (ツリーの下部に描かれる葉) の場合、 の一番下の端でrect同じ表示上の問題が発生します。
rect重要なクラスターをマークする手段として行ったのは、クラスターのエッジの先端と (水平) リーフ ラベルの間に垂直の赤いストライプをレンダリングするように幅を狭めることです。
これにより、クリッピングの問題は解消されますが、別の問題が発生します。つまり、クラスター エッジの先端と葉のラベルの間のスペースが 6 ピクセル程度しかなく、あまり制御できません。これにより、縦縞の幅が制限されます。
より悪い問題は、x縦縞が 2 つの要素の間に収まる場所を示す座標が、より大きなツリー ( par["usr"]) の幅に基づいて変化することです。これは、ツリー階層が最終的にどのように構造化されるかによって異なります。
x私は「修正」、またはより適切に言えば、この値とrect水平方向の木の幅を調整するためのハックを書きました。常に一貫して機能するとは限りませんが、私が作成しているツリーでは、エッジやラベルに近づきすぎないように (またはオーバーラップさせないように) しているようです。
rect最終的には、クリッピングがないように を描画する方法を見つけた方がよいでしょう。xまたは、特定のツリーのエッジとラベルの間の特定の位置を計算する一貫した方法で、ストライプを適切に中央に配置してサイズを調整します。
色や線のスタイルでエッジに注釈を付ける方法にも非常に興味があります。
r - R ランダム フォレスト変数の重要性
Rでの分類にランダムフォレストパッケージを使用しようとしています.
リストされている可変重要度メジャーは次のとおりです。
- クラス 0 の変数 x の生の重要度スコアの平均
- クラス 1 の変数 x の生の重要度スコアの平均
MeanDecreaseAccuracyMeanDecreaseGini
今、私はそれらの定義を知っているように、これらの「意味」を知っています。私が知りたいのは、それらの使い方です。
私が本当に知りたいのは、これらの値がどれほど正確であるか、良い値とは何か、悪い値とは何か、最大値と最小値などのコンテキストでのみ、これらの値が何を意味するかです.
変数の値が高い場合、それは重要か重要でないかMeanDecreaseAccuracy? MeanDecreaseGiniまた、生のスコアに関する情報も役立ちます。それらの適用に関連するこれらの数値について知っておくべきことをすべて知りたい.
「エラー」、「合計」、または「順列」という言葉を使用する説明は、ランダム フォレストがどのように機能するかについての議論を含まない単純な説明よりも役に立ちません。
ラジオの使い方を誰かに説明してほしいと思ったとしても、ラジオが電波を音に変換する仕組みが説明されているとは思いません。
r - R のタイトル/ラベルのないプロット
Rでは、タイトルがなく、タイトルが占めていたスペースを使用するプロットを作成する方法はありますか?
plot()、main、sub、xlab、およびylabすべてのデフォルトは ですが、これNULLにより、本来あったはずの場所に空白が残るだけです。それらを含めないことは、端に余分な空きスペースを残すのではなく、プロット スペース全体が利用されることを意味する場合に便利です。これはすべて、プロットをpdf()、png()などのファイル デバイスに出力する場合に特に関連します。
r - 移動平均の計算
Rを使用して、マトリックス内の一連の値の移動平均を計算しようとしています。Rには、移動平均を計算できる組み込み関数がないようです。パッケージはそれを提供しますか?それとも私は自分で書く必要がありますか?
r - バッチモードでRを使用して「nullデバイス」出力を抑制する
物事をプロットするためにRスクリプトを呼び出すbashスクリプトがいくつかあります。何かのようなもの:
問題は、にもかかわらず--slave、を呼び出すとdev.off()メッセージが出力されることですnull device 1。多くのプロットが実行されると、または多数のファイルにプロットするより複雑なスクリプトの場合、これは非常に面倒になります。
このメッセージを抑制する方法はありますか?
r - 関数の本文で言及せずに関数パラメーターを使用するにはどうすればよいですか?
私はRについてもっと学びたい(そしてC拡張機能を書いている)ので、いくつかのよく知られたパッケージのソースを読むのに役立つかもしれないと思いました。私は次のように定義されるrpartから始めることにしました:
ソースをすばやく検索しましたが、関数本体のどこにも数式が記載されていませんが、rpartがそのパラメーターを使用していることはわかっています。rpartが関数本体に名前を付けずに数式を使用しているのはどうしてですか?
r - Emacs ESS モード - コメント領域のタブ移動
Emacs の Emacs-Speaks-Statistics (ESS) モードを使用しています。R コードを編集するとき、コメント行 (# で始まる行) の上に新しい行を作成すると、自動的に右端にタブが付きます。これを修正するには、.emacs.el ファイルをどのように変更すればよいですか?
たとえば、私は持っています:
ここで、カーソルを行頭に置いて Enter キーを押すと、次のようになります。
ヒントをありがとう。
r - どういう意味?
この質問から、私がコードについてあまり知らないことがわかるでしょう。私の質問はこれです:
このコードはどういう意味ですか?
mnlongとtimeが変数であることは理解していますが、 は%%混乱します。
誰かが私に基本的な説明をしてもらえますか?