在R中省略和找到平均值

时间:2015-01-03 21:47:50

标签: r average

我获得商店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

感谢所有帮助!

1 个答案:

答案 0 :(得分:1)

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

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

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

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

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

假设:

  1. 您的数据位于名为df
  2. 的数据框中
  3. STORE ID列将转换为有效的R名称,并带有一个点代替空格