タグ付けされた質問 「tidyeval」

3
mutateの右側のrecodeでのtidyevalベースの非標準評価の使用
各列が多くの値をとることができる文字ベクトルであるティブルを考えてみましょう-「A」から「F」までとしましょう。 library(tidyverse) sample_df <- tibble(q1 = c("A", "B", "C"), q2 = c("B", "B", "A")) 引数として列名を取り、その列を再コード化して、回答「A」がNAになり、それ以外の場合はdfがそのまま返されるようにする関数を作成したいと思います。このように設計する理由は、特定の列を使用して一連の操作を実行するより広範なパイプラインに適合するためです。 これを行うには多くの方法があります。しかし、私は、慣用的なtidy_eval / tidyverseアプローチが何であるかを理解することに興味があります。まず、質問名はmutate動詞の左側にある必要があるため、!!and :=演算子を適切に使用します。しかし、それでは右側に何を置くべきでしょうか? fix_question <- function(df, question) { df %>% mutate(!!question := recode(... something goes here...)) } fix_question(sample_df, "q1") # should produce a tibble whose first column is (NA, "B", "C") 私の最初の考えはこれがうまくいくと思いました: df %>% …
13 r  dplyr  rlang  tidyeval  nse 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.