在 R 中省略和寻找平均值

Omitting and finding average in R

我得到了商店 ID 和商店赚取的金额。我想做的是,除了一个商店之外的所有商店(假设商店 ID:333333 和 222222 在这种情况下),然后找到商店 111111 的平均数量。

YEAR       STORE ID       AMOUNT
2012       111111         11
2012       222222         12
2012       111111         4 
2012       222222         4 
2012       111111         45
2012       333333         7

感谢所有帮助!

虽然 mean(df$AMOUNT[df[, "STORE ID"] == 1111111]) 将适用于您的特定示例,但您可能还想检查 dplyr 包,它提供了一些高级 table 操作和分组功能。

例如,要一次获取所有商店的平均值,您可以执行以下操作:

library(dplyr)
summarize(group_by(df, STORE.ID), Average = mean(AMOUNT))

或者,相同的代码,但使用管道运算符 (%>%),这通常在 dplyr 中完成:

df %>%
  group_by(STORE.ID) %>%
  summarise(Average = mean(AMOUNT))

假设:

  1. 您的数据位于名为 df 的数据框中
  2. STORE ID 列转换为有效的 R 名称,用点代替 space