ベクターに基づいて、「パイプのような」演算子を使用して、データフレーム内の他の変数と同じ長さの新しい変数を作成しようとしていますLETTERS
。magrittr
何かがうまくいかず、問題を診断するには新人すぎます。
「伝統的な」ネストされた関数を試してみると、変数を正しく作成できます。
expand.grid(a=c(1000-500,1000,1000+500),
b=c(15,150)) %>%
mutate(c=paste("foo", LETTERS[seq_along(a)],sep="_"))
## a b c
## 1 500 15 foo_A
## 2 1000 15 foo_B
## 3 1500 15 foo_C
## 4 500 150 foo_D
## 5 1000 150 foo_E
## 6 1500 150 foo_F
%>%
それで、パイプのようなfrommagrittr
とを試してみようと思いましたdplyr
expand.grid(a=c(1000-500,1000,1000+500),
b=c(15,150)) %>%
mutate(c=paste("foo", a %>%
seq_along %>%
LETTERS[.],sep="_"))
## Error: incorrect number of dimensions
[
これは、次のエイリアスから抽出 () 関数を追加しても機能しませんmagrittr
。
expand.grid(a=c(1000-500,1000,1000+500),
b=c(15,150)) %>%
mutate(c=paste("foo", a %>%
seq_along %>%
extract(LETTERS,.),
sep="_"))
## Error: incorrect number of dimensions
debug_pipe
無駄にパイプをデバッグしようとしました。どんなアイデアにもとても感謝しています!