我在R中有一个聚合数据集。现在我想根据数据中的两个键绘制数据,即两列。 以下是示例数据集。等级从1-25开始,分为5组
Date Grade price
01/01/2012 1 50
01/01/2012 2 20
01/01/2012 3 41
01/01/2012 4 56
02/01/2012 1 78
02/01/2012 2 89
02/01/2012 3 100
02/01/2012 4 12
02/01/2012 5 0
02/01/2012 6 60
sortmax=aggregate(a$price, by=list(a$Date), FUN=max)
如果我按日期汇总价格并使用FUN = max,我将获得特定日期的最高价格。我想找到特定等级组的最高价格,例如1-5级的最高价格,然后是6-10级的最高价格,等等。所以简单来说,我每天会有5个值。实施例
Date Grade Max price
01/01/2012 1-5 56
01/01/2012 6-10 52
01/01/2012 11-15 56
01/01/2012 15-20 78
01/01/2012 21-25 50
02/01/2012 1-5 100
02/01/2012 6-10 110
02/01/2012 11-15 56
02/01/2012 15-20 85
02/01/2012 21-25 25
如何每天绘制每组的日期与最高价格,如每天绘制1-5级的每日最高价格,最后一个问题是如何在一个不同的情节上绘制所有这些线条颜色。许多软件包不适用于R 3.1.1,windows Xp
答案 0 :(得分:0)
要对成绩进行分组,请使用关系创建数据框 - 简单:
gradeRange <- data.frame(c(rep('1-5',5),rep('6-10',5)),1:10)
(当然最多持续25个)并给它命名(等级,范围);然后将它附加到x:
x$gradeRange <- gradeRange[gradeRange$Grade == x$Grade]
或者用数学写出来(基于5个人):
x$gradeRange <- floor((x$Grade-1)/5)+1
(然后你可以制作那些因子值,或者只留下1/2/3/4/5)。
然后你可以使用ggplot来绘制图形,或者使用gradeRange作为组来汇总和使用格子或图。