問題タブ [broom]

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.

0 投票する
1 に答える
280 参照

r - Rのリストのaugmentとggplotの問題

私のデータセットは次のとおりです。

x6 と x7 でスプラインを実行したいのですが、x1、x2、x3、x4、x5 をグループ化する前に、次のようにします。

今はbroom::augmentを使いたいのですが、スプラインはリストです。別の問題は、(ggplot2 を使用して) プロットを実行したいということです。

しかし、エラーを教えてください:「エラー:ggplot2はクラスリストのデータを処理する方法を知りません」、ggplotはリストではなくデータフレームを望んでいるためです。データフレームとして適合させる方法、またはリストで拡張を使用する方法はありますか? 拡張を使用できる場合は、次のことができます。

したがって、データフレームに .fitted があり、ggplot を使用できます。

0 投票する
1 に答える
870 参照

r - dplyr とほうきを使用してトレーニング セットとテスト セットの kmeans を計算する

dplyr とほうきを使用して、データの kmeans を計算しています。私のデータには、X 座標と Y 座標のテストとトレーニングのセットが含まれており、いくつかのパラメーター値 (この場合はラムダ) によってグループ化されています。

head上記のテスト データセットがありますが、トレーニング データの座標を含む という名前のデータセットもありますmds.train。ここでの私の最終的な目標は、ラムダでグループ化された両方のセットに対して k-means を実行し、トレーニング センターのテスト データの within.ss、 between.ss 、および total.ss を計算することですほうきに関する優れたリソースのおかげで、次のようにするだけで、テスト セットのラムダごとに kmeans を実行できます。

次に、各ラムダ内の各クラスターについて、このデータの中心を計算できます。

これは私が立ち往生しているところです。リファレンス ページ(例kclusts %>% group_by(k) %>% do(augment(.$kclust[[1]], points.matrix))) に同様に示されているように、機能の割り当てを計算するにはどうすればpoints.matrixよいですか? また、トレーニング セットのセンターを使用して、テストの割り当てに基づいて統計を計算する方法はありますか?mds.testlength(unique(mds.test$lambda))glance()

どんな助けでも大歓迎です!ありがとうございました!

編集:進行状況を更新しています。テスト/トレーニングの割り当てを集計する方法を理解しましたが、両方のセット (テスト センターでのトレーニングの割り当てとトレーニング センターでのテストの割り当て) から kmeans 統計を計算しようとすると、まだ問題が発生します。更新されたコードは以下のとおりです。

この時点までの私の進捗状況を示す以下のプロットを添付しました。繰り返しますが、テスト割り当て/座標 (中心が見えるプロット) でトレーニング データ センターの kmeans 統計 (平方和、平方和の合計、および平方和の間) を計算したいと思います。 ここに画像の説明を入力

0 投票する
0 に答える
134 参照

r - R パッケージのほうきを使用すると ifelse でエラーが発生する

broomから data.frame として結果を取得するためにR パッケージを使用しましたlm()。これはうまくいきましたが、コマンドで問題が発生しますifelse。ほうきパッケージをインストールする前にうまく機能したスクリプトは次のとおりです。

現在、次のエラーが発生します。

ifelse((df$oldvariable == 1), 1, df$newvariable) のエラー:
置換の長さがゼロです。さらに: 警告メッセージ: 1: 不明な列 'newvariable' 2: in rep(no, length.out = length( ans)) : 'x' は NULL なので、結果は NULL になります

broomパッケージをインストールしなければ、これを回避できます。これを引き起こす可能性のある元の data.frame への変更は行われていません。

broomパッケージが原因でifelseコマンドが失敗するのはなぜですか?

0 投票する
2 に答える
1762 参照

r - R - tidy 拡張信頼区間

broomパッケージを使用して信頼区間を計算する方法を知りたいです。

私がやろうとしているのは、シンプルで標準的なものです:

を使用すると、次のように非常に簡単にvisreg回帰モデルをプロットできます。CI

ここに画像の説明を入力

broomandを使用してこれを再現することに興味がありますggplot2。これまでのところ、これしか達成できませんでした:

ここに画像の説明を入力

関数はaugmentを計算しませんconf.intsmooth信頼区間を追加する方法の手がかりはありますか?

0 投票する
2 に答える
2953 参照

r - broom パッケージを使用してマップを整理するときに地域名を保持する

ラスター パッケージの getData 関数を使用して、アルゼンチンの地図を取得しています。ggplot2 を使用して結果のマップをプロットしたいので、broom パッケージの tidy 関数を使用してデータフレームに変換しています。これは問題なく動作しますが、連邦区の名前を保存して地図上で使用できるようにする方法がわかりません。

地区名を保持しない元のコードは次のとおりです。

そして、SPDF から地区名を取り出してマップ ID として使用するためのハックを含むコードを次に示します。

名前を保持するtidy関数を使用する方法があるに違いないと考え続けていますが、私の人生では、それを理解することはできません.

0 投票する
1 に答える
974 参照

r - R - ggplot geom_smooth facet_grid CI が表示されない

データに信頼区間が表示されない理由を理解するのに苦労しています。コードを別のデータセットで再現すると、コードは正常に動作するように見えます。たとえば、mtcars

コードは

プロットを生成するには

信頼区間を取得します。

ただし、これは私のデータでは機能しません。誰かがここで何がうまくいかないのかを理解するのを手伝ってもらえますか? 私は非常に感謝されます。

を計算OLSします

プロット (これは少数のケースの例ですが、結果はデー​​タセット全体で同じです)

CI表示されません。

ここに画像の説明を入力

ここで私が間違っている手がかりはありますか?

奇妙なことに、facet_gridここを使用しないと、CI完全に機能します

ここに画像の説明を入力

私のデータのサンプル

0 投票する
1 に答える
463 参照

r - Broom::nnet::multinom モデルのデータフレームでの tidy エラー

nnetを使用して、データセット内の各都市に適合するモデルを使用して多項式モデルを生成しています。これらのモデルで使用しようとするtidyと、次のエラーが発生します。

ただし、各都市のモデルを個別に作成してから使用するtidyと、どのモデルでもエラーは発生しません。glaceこちらもエラー無く使えています。

このエラーの原因は何ですか?

0 投票する
4 に答える
1613 参照

r - 各予測子列を使用してモデルを適合させ、結果をデータフレームに個別に保存します

応答変数の 1 つの列と予測変数のいくつかの列を持つデータフレームがあります。各予測変数を個別に使用して応答変数のモデルを適合させ、最終的にモデルの係数を含むデータフレームを作成したいと考えています。以前は、次のようにしていました。

dplyrただし、broom、 などを使い始めた今では、これは少し面倒に思えます。 を使用すると、purrr::map多かれ少なかれ、このモデルのリストを再作成できます。

ただし、このリストを で使用する適切な形式にする方法がわかりませんbroom::tidy。列ではなくグループ化された行を使用していた場合、モデルの適合を保存し、次のbroom::tidyようなことを行うために使用します。

もちろん、これは私がやっていることではありませんが、データの列を使用するときに同様の手順があることを望んでいました. おそらくpurrr::nest、目的の出力を作成するために使用する方法や同様のものはありますか?

0 投票する
1 に答える
351 参照

r - ティブル内のリスト列: リスト列を別のリスト列にリンクできますか?

これは私の最初の投稿です。ばかげているように聞こえたり、探している答えが既に存在する場合はご容赦ください。

私の主な問題は次のとおりです。4 つの列 (文字列、2 つのデータ列、および文字列の各レベルの距離行列を含む列) を含むティブルを作成し、を使用する関数を作成しようとしています。従属変数として 4 列目からの距離行列と、2 列目からのいくつかの独立変数。問題は、従属変数が見つからないことを R が警告し続けることです。

私が使用したパッケージは次のとおりです。

私の IV を含む tibble は次のようになります。

私はそれを入れ子にします:

そして、これがどのように見えるかです:

続いて、生の有無データを含む別のティブルを作成します。

次に、そのティブルもネストします。

そして、それは次のようになります:

IV を含む Tibble と結合するために、データ列の名前を変更します。

次のステップとして、行列を計算する関数を作成します。

rr ティブルは次のようになります。

そして、2 つの tibble を結合します。

ティブルは次のようになります。

そして、適用したい関数は次のようになります。

次のコードで計算しようとすると:

my_tibble <- my_tibble %>% mutate(mrm = map(IVs,mrm_model))

次のエラー メッセージが表示されます。

Error in mutate_impl(.data, dots) : object 'Dist.matrix' not found.

なぜこれがポップアップし続けるのか分かりますか?

$ 記号を使用して関数を「修正」しようとすると、次のようになります。

mrm_model <- function(df){ecodist::MRM(my_tibble$Dist.matrix~dist(Area),data = (df))}

次の警告が表示されます。

Error in mutate_impl(.data, dots) : invalid type (list) for variable 'my_tibble$Dist.matrix'.

私はこの種のデータ操作のまったくの初心者なので、明らかに頭がいっぱいです。得られるすべての助けに大いに感謝します。

0 投票する
1 に答える
1730 参照

r - dplyr を使用して group_by の後にいくつかの回帰モデルを当てはめ、結果のモデルをテスト セットに適用する

特定の変数 (私の場合は生涯) の値に基づいて分割したい大きなデータセットがあり、各分割でロジスティック回帰を実行します。dplyr を使用して複数の回帰モデルを適合する@tchakravarty の回答に従って、次のコードを作成しました。

私の質問は、残りのデータ (選択されなかった 0.3 の割合) の AUC を計算する際に、結果のロジスティック モデルをどのように使用できるかということです。

よろしくお願いします!