R中的For循环编译错误
我在R中有一个数据框,按部门列出商店的每月销售数据。每个记录包含一个月/年、一个部门名称以及该部门当月的总销售额。我试图按部门计算平均销售额,将其添加到向量R中的For循环编译错误,r,if-statement,for-loop,R,If Statement,For Loop,我在R中有一个数据框,按部门列出商店的每月销售数据。每个记录包含一个月/年、一个部门名称以及该部门当月的总销售额。我试图按部门计算平均销售额,将其添加到向量avgs中,但我似乎遇到了两个问题:每个部门的总销售额根本没有编译(其评估为零),而avgs是按记录而不是按部门编译的。以下是我所拥有的: avgs = c() for(dept in data$departmentName){ total <- 0 for(record in data){ if(identical(d
avgs
中,但我似乎遇到了两个问题:每个部门的总销售额根本没有编译(其评估为零),而avgs
是按记录而不是按部门编译的。以下是我所拥有的:
avgs = c()
for(dept in data$departmentName){
total <- 0
for(record in data){
if(identical(data$departmentName, dept)){
total <- total + data$ownerSales[record]
}
}
avgs <- c(avgs, total/72)
}
avgs=c()
用于(数据中的部门$departmentName){
总计为什么不使用库(dplyr)
我喜欢dplyr
,因为它的语法和管道性。我认为它比base R有很大的改进,以便于数据争论。这里有一个很好的备忘单来帮助你开始使用:哈哈,我没有意识到我没有解释划分。数据集中有72个月的时间,所以我要计算总销售额/72=平均值。我在R方面是个相当新手而且从未见过dplyr
,在本例中Species
将等同于我的部门名称
,结果列将给出我的部门
,总计
,并且avg
,R不是编译语言。
library(dplyr)
data(iris)
iris %>% group_by(Species) %>% # or dept
summarise(total_plength = sum(Petal.Length), # total owner sales
weird_divby72 = total_plength/72) # total/72?
# A tibble: 3 × 3
Species total_plength weird_divby72
<fctr> <dbl> <dbl>
1 setosa 73.1 1.015278
2 versicolor 213.0 2.958333
3 virginica 277.6 3.855556
data %>% group_by(deptName) %>%
summarise(total_sales = sum(ownerSales),
monthly_sales = total_sales/72)