2013-08-23 32 views
0

我有不同的宿舍像如何绘制平均图表中的R

Quarter   GrossMargin 
2009 Q1   17.60% 

2009 Q1   17.80% 

2010 Q2    18.50% 

2011 Q1    21.60% 

看到这样的我有很大的数据集。我想在R中画这个。我用qplot(df$Quarter, df$GrossMargin, binwidth=.5)

它在每个出现的数据点出现点。就像在2009年第一季度的X轴上一样,Y轴上的两个数据点分别为17.6和17.8。但是我想要每个季度的平均值,就像在X轴上2009年第一季度应该对应于Y轴上的单个值(即17.6和17.8的平均值)。如果我试图做的意思(GrossMargin),它给整个列的意思,这是没有用的。我的所有季度(2009年Q1,Q2,Q3,2010年Q1,Q2,Q3)都在一列中,并且在其他单列中的GrossMargin的相应值。如何做到这一点R中

Quarter GrossMargin 
2009 Q1 17.60% 
2009 Q1 17.80% 
2009 Q1 22.40% 
2009 Q1 17.70% 
2009 Q1 17.50% 
2009 Q1 17.50% 
2009 Q1 18.40% 
2009 Q1 18.70% 
2009 Q1 21.10% 
2009 Q1 13.60% 
2009 Q1 17.70% 
2009 Q1 17.70% 
2009 Q1 18.50% 
2009 Q1 17.70% 
2009 Q1 18.20% 
2009 Q1 30.20% 
2009 Q1 17.60% 
2009 Q1 19.00% 
2009 Q1 14.60% 
2009 Q1 17.50% 
2009 Q1 18.40% 
2009 Q1 21.60% 
2009 Q1 21.10% 
2009 Q1 18.40% 
2009 Q1 17.30% 
2009 Q1 14.60% 
2009 Q1 17.60% 
2009 Q1 17.50% 
2009 Q2 17.50% 
2009 Q1 14.60% 
2009 Q1 17.60% 
2009 Q1 17.70% 
2009 Q1 17.70% 
2009 Q1 17.30% 
2009 Q1 17.60% 
2009 Q1 18.50% 
2009 Q1 18.20% 
2009 Q1 17.50% 
2009 Q1 17.70% 
2009 Q1 17.70% 
2009 Q1 17.70% 
2009 Q1 30.20% 
2009 Q1 17.60% 
2009 Q1 18.40% 
2009 Q1 30.20% 
2009 Q1 18.50% 
2009 Q1 39.30% 
2009 Q1 17.50% 
2009 Q1 17.70% 
2009 Q1 17.70% 
2009 Q1 17.30% 
2009 Q1 19.40% 
2009 Q1 20.90% 
2009 Q1 17.70% 
2009 Q1 18.70% 
2009 Q1 17.50% 
2009 Q1 17.70% 
2009 Q1 17.50% 
2009 Q1 17.50% 
2011 Q1 18.20% 
2011 Q1 17.60% 
2011 Q1 17.70% 
2011 Q1 17.70% 
2011 Q1 18.50% 
2011 Q1 19.00% 
2011 Q1 21.60% 
2011 Q1 17.50% 
2011 Q1 14.60% 
2011 Q1 30.20% 
2011 Q1 18.40% 
2009 Q1 21.10% 
2010 Q2 17.50% 
2010 Q2 17.70% 
2010 Q2 17.70% 
2010 Q2 17.50% 
2010 Q2 17.50% 
2010 Q2 18.20% 
2010 Q2 18.50% 
2010 Q2 17.70% 
2010 Q2 17.60% 
2010 Q2 17.30% 
2010 Q2 14.60% 
2010 Q2 17.70% 
2010 Q2 18.40% 
2010 Q2 17.60% 
2009 Q1 17.70% 
2009 Q1 19.40% 
2009 Q1 17.50% 
2009 Q1 17.50% 
2009 Q1 20.90% 
2009 Q1 19.00% 
2009 Q1 17.60% 
2009 Q1 17.70% 
2009 Q1 19.00% 
2009 Q1 17.70% 
2009 Q1 17.50% 
2009 Q1 17.50% 
2009 Q1 17.50% 

的其他5列这是Order.id客户编号,日期等

回答

0

首先,改造%字符串数值:

df[2] <- as.numeric(gsub("%", "", as.character(df[ , 2]))) 

计算avergae GrossMargin for each Quarter

dat <- aggregate(GrossMargin ~ Quarter, df, mean) 

简介:

plot(as.factor(dat$Quarter), dat$GrossMargin) 

enter image description here

+0

也许你应该把这个作为答案,原来[OP的问题(http://stackoverflow.com/questions/18396525/how-to-get-plot-of-从r的平均值),因为这个问题在确切的副本。 –

+0

@DidzisElferts我还没有意识到原来的问题。 –