問題タブ [tidyr]

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 に答える
104 参照

r - 定義されたマッピングを使用して、数値列をRの文字列に置き換えます

私はいくつかの検索を行いましたが、私の問題に対する答えを見つけることができませんでした.

student_id整数の列と他のいくつかの列を持つデータフレームがあるとします。また、2 つの列を含む別のマッピング テーブルもあり、1番目は文字列student_idで、2 番目student_nameは文字列です。student_id列をに置き換える最良の方法は何student_nameですか? マッピング テーブルは一意ですが、データ フレームには同じ学生 ID が複数存在する可能性があることに注意してください。

dplyrそれが役立つ場合は、パッケージ化に取り組んでいtidyrます。

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

r - dplyr の同じグループ変数で 2 つのデータ フレームをフィルター処理する

多くの場合、いくつかの変数でデータ フレームをグループ化した後、同じ変数でグループ化された別のデータ フレームのデータを使用する関数を適用したいと考えています。私が見つけた最善の解決策は、次のように関数内でsemi_joinを使用することです。

問題は、semi_joinが「Joining by...」メッセージを返し、この関数を使用してブートストラップを実行していると、コンソールを折りたたむ多くのメッセージが表示されることです。では、結合の冗長性を減らす方法はありますか? このようなことを行うためのよりエレガントな方法を知っていますか?

PS私は数年前にplyrについて同様の質問をしました:ddplyで指定された変数による関数内のサブセット

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

r - tidyr: すべての列を展開せずに広げる

学習に取り掛かりtidyr、問題を抱えていspread()ます。

偽の実験データセットは次のとおりです。

をのぞいてdfみると、activitydrugは被験者内因子であるのに対し、depressedは被験者間因子であることがわかります。

df各主題moodが別々の列で表され、各行が と の組み合わせに対応するactivityワイド形式に変換したいと思いdrugます。残念ながら、各レベルの行のセットを作成しないようにする方法がわかりませんdepressed。これが私がこれまでに持っているものです:

depressed結果の出力が4行しかないように、拡張を避けたいと思います。

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

r - 複数の変数を持つ summrise_each() の複数の関数

以下の作品。より良い解決策があると確信しています。

0 投票する
3 に答える
3048 参照

r - 複数の列を整理されたデータに結合する

私のデータセットは次のようになります。

これを作成するためのいくつかのコード:

)

このデータを次のように整理したいと思います。

次の解決策では、必要な場所に到達できませんでした: 複数の列のセットを収集し複数の列を 1 つに結合する

私は Hadley の素晴らしい tidyr pakcage が行くべき道だと思います... ただこれを理解することはできません. どんな助けでも大歓迎です。

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

r - R: DPLYR パッケージ: カスタム関数を呼び出すと bind_rows が失敗する

DPLYR と TIDYR を使用して、特定の列のデータによっては行が欠落する可能性があるデータセットの整頓されたバージョンを作成しようとしています。新しい tbl_df(data.frame) で (デフォルト データで作成することにより) 不足している行を返す関数を作成しました (ユニット テストを行い、特定のデータで問題なく動作します)。

ただし、「bind_rows」から呼び出すと、次のエラーが発生します: data.frame(a, b, c,...: Object 'A' not found. でエラーが発生しました。

たとえば、私のデータは次のようになります。

私のコードは次のようになります。

私が間違っていることはありますか?私はまだR、DPLYR / TIDYRに慣れていません...

注: 「bind_rows」への最後の呼び出しを削除すると、テーブルは適切な A、B、C などの列で期待どおりにクリーンアップされます。この特定のシナリオでは「for」ループも使用しますが、これは最適ではない可能性がありますが、今のところ、このバージョンで作業して、コードを最適化 (またはベクトル化) できるようにします。

ありがとう!