我每周都有一个产品价格数据集。这个产品有很多品种,每个都有自己的价格。我有兴趣根据每个的销售量来计算加权价格。
我尝试使用循环,但不起作用。
有人可以帮助我吗?
这是我的数据集的最小示例:
任何
nrow week variety price volume
1 10 Semiduro 911 15550
2 10 Semiduro 809 13400
3 10 Semiduro 611 15200
4 10 Semiduro 517 17250
5 10 Semiduro 389 4550
6 10 Semiduro 300 1500
7 10 Paisana(o) 1100 19200
8 10 Paisana(o) 726 22900
9 10 Paisana(o) 452 10450
10 11 Semiduro 1362 13250
11 11 Semiduro 1163 7100
12 11 Semiduro 1032 15580
13 11 Semiduro 768 9700
14 11 Semiduro 703 3670
15 11 Semiduro 550 1450
16 11 Paisana(o) 1825 20200
17 11 Paisana(o) 1402 30650
18 11 Paisana(o) 838 9750
19 12 Semiduro 1050 11350
20 12 Semiduro 878 9200
答案 0 :(得分:3)
我们可以使用dplyr
library(dplyr)
df1 %>%
group_by(week, variety) %>%
summarise(wprice = weighted.mean(price, volume))
# week variety wprice
# <int> <chr> <dbl>
#1 10 Paisana(o) 808.1598
#2 10 Semiduro 673.5663
#3 11 Paisana(o) 1452.2574
#4 11 Semiduro 1048.4625
#5 12 Semiduro 972.9976