問題:dplyr/tibbleを使用してadd_rowしたいです。私の例ではAでデータをグループ化し、次にグループ名Aを含むadd_rowをBの値にしたいとします。do add_rowとgroup_byの問題。 add_rowにgroup_by変数名が必要です
私が直面している問題は、Group_by変数AをA私が何を試しても、常にその列の値としてエラーまたはNAが戻ってきます。
再現例:
example <- data.frame(A = sample(letters[1:3],10,replace = TRUE), B = sample(letters[24:26],10,replace = TRUE), C = sample(1:3,10,replace = TRUE))
例データの出力:私は実行したい
A B C 1 c y 2 2 b x 3 3 c y 1 4 b y 1 5 c z 1 6 a x 1 7 b x 1 8 c z 2 9 a y 3 10 c y 1
コード。
answer <- example %>% mutate(A = as.character(A), B = as.character(B)) %>% group_by(A) %>% do(add_row(., B = "ADDED", C = "ADDED"))
データの出力:NAがあり、私はそれがグループ名(A、B、またはC)を言いたいデータの出力、でそう
A B C 1 a x 1 2 a y 3 3 <NA> ADDED ADDED 4 b x 3 5 b y 1 6 b x 1 7 <NA> ADDED ADDED 8 c y 2 9 c y 1 10 c z 1 11 c z 2 12 c y 1 13 <NA> ADDED ADDED
私はグループ変数名をそこに入れてみましたが、エラーが発生しません。
ありがとうございます!
aosmith、あなたの第二の答えは私が持っていた本当のデータセット/問題のために働きました。実際のデータセットに。$ Aを使用すると、add_rowのコピーが2つ作成されました。なぜそれができなかったのか分かりませんが、あなたが提供した2番目のソリューションはうまく機能しました。お手伝いありがとう!私はfill()について学ばなければなりません –
@MattD最初のオプションで 'unique 'を忘れました。 – aosmith