如何应用功能并将多个变量分配给分组的小标题

时间:2020-07-19 03:49:25

标签: r dplyr

我想在不离开管道的情况下对分组的小标题应用功能。这是一个示例:

数据框

test = data.frame(ticker=c(rep(c('A','B','C'),100)),price=rnorm(300))

功能

MACD(test$price, nFast=12*30, nSlow=26*30,nSig=9, percent=FALSE)

类似的东西(但可以正常工作):

 prices %>%
  group_by(ticker) %>%
  group_modify(~ {
    .x %>% MACD(.$price.close, nFast=12*30, nSlow=26*30,nSig=9, percent=FALSE)
  }) %>%
mutate(change=macd-signal)

最终结果将是一个带有报价,价格,macd,信号和变化的数据框。

1 个答案:

答案 0 :(得分:1)

我愿意do()函数,大致如下:

prices %>%
  group_by(ticker) %>%
  do(macd = MACD(.$price.close, nFast=12*30, nSlow=26*30,nSig=9, percent=FALSE)) %>%
  mutate(change=macd-signal)

do()dplyr的文档:https://dplyr.tidyverse.org/reference/do.html

相关问题