dplyr:如何将结果汇总到变量(不是表)

时间:2015-03-12 11:33:18

标签: r dplyr

我想总结一些数据并将结果值存储在变量中,而不是存储在表中。所以,像这样:

result <- filter(data, cond==TRUE) %>%
    summarize(result = col1 / col2) %>%
    RETURN_COL(result)

有办法吗?

1 个答案:

答案 0 :(得分:3)

您可以使用magrittr的“展示管道运营商”,即%$%。这是一个可重复的例子:

library(magrittr)
library(dplyr)

result_variable <- iris %>% 
  filter(Species == "setosa") %>%
  mutate(result = Sepal.Length / Sepal.Width) %$%   # use magrittr's %$% operator to extract the result vector
  result

然后检查生成的矢量:

> str(result_variable)
# num [1:50] 1.46 1.63 1.47 1.48 1.39 ...
> is.atomic(result_variable)
# [1] TRUE