我不太清楚为什么这段代码不起作用。
以下是我的数据:
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 ...
非常感谢
答案 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