問題タブ [purrr]
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} purr を使用して空白または一意の列を削除します
最近、purrr を発見しました。マップ機能がとても気に入っています。誰もが次の問題に取り組む方法を知っています:
特定の変数に基づいて複数のデータフレームに分割したデータフレームがあります。一度分割すると、結果のリストで一意のデータフレームの列を削除したいと思います。これを単一のデータフレームで解決するのは非常に簡単ですが、リストではよくわかりません-マップを使用してこれをどのように解決しますか?
私の現在の解決策は次のとおりです。
追加の問題があります。変数map
に適用remover
したくありません。target
誰でも purrr パッケージのマップを使用してこれを行うのを手伝ってもらえますか?
解決した
@akrun によって提供された最終的な解決策 - 完全なクレジットは彼にあります。
わずかな違いは、ここではターゲット変数をドロップするデータフレームもドロップすることです。私の目的では、これらのデータフレームを保持する必要はありません。次のコードを使用すると、保持するレベルと削除するレベルをすばやく判断できます。
r - Tidyr の「gather」と Ggplot2 を使用した関数型プログラミングにより、より迅速な視覚的データ探索を実現
以下のコード例 ( productplots または ggmosaic からの幸せなデータセットを使用) を使用すると、さまざまなカテゴリ変数 (性別、結婚、健康、学位) を幸せ (幸せ) で分類してすばやく視覚化できます。これを達成するには、条件付けたい変数を「収集」関数 (この場合は「幸せ」) から分離する必要があります。しかし、この変数を変更したい場合はどうすればよいでしょうか? または別の組み合わせを作成しますか?以下のコードを継続的に再現し、変数を変更する必要があります。関数でこれを達成するためのより速い方法はありますか? purrr パッケージは何らかの形で役に立ちますか?
できるだけ Tidyverse に基づいたソリューションを希望します。
r - R: purr パッケージからの reduce() のサンプル コードの実行エラー
reduce() を使用して、データ フレームから可変数の列をペアで連結しようとしています。reduce() が機能するように見えたので、サンプル コードをいくつか試してみたところ、このエラーが発生しました。私はRStudio、バージョン1.0.136を使用しています
PS これは私の最初の質問なので、あまりにも多くの情報を間違えようとしました。異なる/多い/少ない情報を提供する必要がある場合はお知らせください。
r - dplyr の purrr と mutate() を使用して、データ フレームのリストに新しい変数を追加します。
ここで SO に関する多くの関連する質問があることは知っていますが、関数の適用リストや cbind/rbdind からではなく、purrr ソリューションを探しています (この機会に purrr をよりよく知りたいと思います)。
データフレームのリストがあり、リスト内の各データフレームに新しい列を追加したいと考えています。列の値は、データフレームの名前、つまりリスト内の各要素の名前になります。
ここに似たようなものがありますが、関数 and の使用を伴いますが、mutate_each()
必要なのは だけmutate()
です。
リスト ( と呼ばれる) を理解するために、最初の要素のcomentarios
最初の行を次に示します。str()
したがって166860353356903_661400323902901
、各データフレームの ID として、新しい変数に結果の 13 行を含めるようにします。
私がしようとしているのは:
ただし、mutate()
機能するにはデータフレームの名前が必要です。
それぞれの名前を入れるのは意味がありません。ループの領域に迷い込んで、purrr (およびより一般的には R) の利点を失うことになります。リストが小さければ を使用しますreshape::merge_all()
が、2000 を超える要素があります。助けてくれてありがとう。
編集:アリスターのコメントに従って、問題を再現可能にするためのいくつかのデータ