获取每个元素的平均值

时间:2019-03-29 11:25:49

标签: r

我有一个“商店”数据,其中包括product1 / 2的价格,销售额和商店名称。我想计算每个商店的产品销售平均值。

选择商店编号1

Store1=Store[(Store$StoreNum==1),]

计算商店1中的均值

STORE1  =colMeans(Store1[c("p1price","p2price")])

这样做,我可以获得单个答案,但是有什么方法可以一次计算每个商店的均值?

我想用非常基本的R来解决这个问题,而不是使它复杂化。

1 个答案:

答案 0 :(得分:1)

我们可以用group_by做一个dplyr的意思。在group by语句中使用“ StoreNum”,并与summarise_at一起在感兴趣的列中循环以获取mean

library(dplyr)
df1 %>%
   group_by(StoreNum) %>%
   summarise_at(vars(matches("price")), mean, na.rm = TRUE)

或使用aggregate中的base R

aggregate(StoreNum ~ ., df1[c("StoreNum", "p1price","p2price")], mean)