找不到dplyr对象错误

时间:2016-08-19 17:47:09

标签: r dplyr

我不太清楚为什么这段代码不起作用。

以下是我的数据:

head(test)
  Fiscal.Year Fiscal.Quarter   Seller Product.Revenue Product.Quantity Product.Family Sales.Level.1          Group Fiscal.Week
1        2015         2015Q3 ABCD1234            4000                4      Paper cup      Americas Paper Division          32
2        2014         2014Q1  DDH1234             300                5   Paper tissue  Asia Pacific Paper Division          33
3        2015         2015Q1  PNS1234             298                6         Spoons          EMEA        Cutlery          34
4        2016         2016Q4  CCC1234             289                7         Knives        Africa        Cutlery          33

现在,我的目标是按年汇总收入。

这是我写的dplyr代码:

test %>% 
  group_by(Fiscal.Year) %>%
  select(Seller,Product.Family,Fiscal.Year) %>%
  summarise(Rev1 = sum(Product.Revenue)) %>%
  arrange(Fiscal.Year)

这不起作用。我收到错误:

Error: object 'Product.Revenue' not found

然而,当我摆脱选择声明时,它可以正常工作,但是我无法通过卖家和产品系列看到输出。

test %>% 
  group_by(Fiscal.Year) %>%
 # select(Seller,Product.Family,Fiscal.Year) %>%
  summarise(Rev1 = sum(Product.Revenue)) %>%
  arrange(Fiscal.Year)

输出结果为:

# A tibble: 3 x 2
  Fiscal.Year  Rev1
        <dbl> <dbl>
1        2014   300
2        2015  4298
3        2016   289

这很有效。

知道发生了什么事吗?自从我开始在R开始编程以来已经有3个星期了。所以,我很感激你的想法。我正在遵循本指南:https://cran.rstudio.com/web/packages/dplyr/vignettes/introduction.html

另外,我在SO上查看了类似的主题,但我认为它们与问题有关,因为&#34; +&#34;签名:Error in dplyr group_by function, object not found

我正在寻找以下输出:

  Fiscal.Year  Rev1 Product Family Seller
        <dbl> <dbl> ...             ...
1        2014   ...
2        2015   ... 
3        2016   ...

非常感谢

1 个答案:

答案 0 :(得分:0)

确定。这就是诀窍:

test %>% 
  group_by(Fiscal.Year, Seller,Product.Family) %>%
  summarise(Rev1 = sum(Product.Revenue)) %>%
  arrange(Fiscal.Year)

输出:

Source: local data frame [4 x 4]
Groups: Fiscal.Year, Seller [4]

  Fiscal.Year   Seller Product.Family  Rev1
        <dbl>    <chr>          <chr> <dbl>
1        2014  DDH1234   Paper tissue   300
2        2015 ABCD1234      Paper cup  4000
3        2015  PNS1234         Spoons   298
4        2016  CCC1234         Knives   289