按数值范围减少数据框

时间:2016-06-16 13:36:36

标签: r dataframe

我有一个

形式的数据框
Age     Average   

16        1.89
17        6.88
...       ...
85        7.44

我希望减少这些数据,以制作十年龄(10-20岁,21-30岁等)平均得分的箱线图。这有功能吗?

作为参考我考虑平均值',更多的是询问这种机制'

2 个答案:

答案 0 :(得分:0)

试试这个:

aggregate(df, by = list(cut(df$Age, seq(10, 90, 10))), FUN = mean)

其中df是您的数据框

答案 1 :(得分:0)

我们应该使用cut函数

set.seed(123)
DF <- data.frame(Age = 16:85,
                 Values = rnorm(70))
DF$AgeGroup = cut(DF$Age, breaks = seq(10, 90, by = 10))
boxplot(Values~AgeGroup, data = DF)

enter image description here

请注意,我已经生成了一些虚拟数据来演示机制。