2016-05-28 4 views
0

2381行の長い形式の大きな(とにかく)データセットがあります。これは、四半期ごとの情報が含まれ、ここではサンプルです:R:データのサブセットの平均を計算する

Year Price Region 
Q4 1973 7713 North 
Q1 1974 7743 North 
Q2 1974 7733 North 
Q3 1974 7862 North 
Q4 1974 7932 North 
Q1 1975 8151 North 
. 
. 
. 
Q1 2015 188566 UK 
Q2 2015 194258 UK 
Q3 2015 195733 UK 
Q4 2015 197044 UK 
Q1 2016 198564 UK 

は、私は、各地域の年間平均値を計算し、その後ggplot2を使用して、それをプロットしたいです。私はプロットで大丈夫ですが、私は非常に多くの異なる年の平均を得る方法を見つけようと苦労しています(合計13の地域があります)。

助けが必要ですか?

enter image description here

+0

[この質問](HTTPを見てみましょう://stackoverflow.com/questions/15105670/how-to-calculate-average-values-large-datasets)日時制約によって平均化する3つの方法を示します – JGreenwell

答えて

1

私はあなたが年ごとに単一の平均価格、または各年の各地域の平均をしたいかはわかりません。かつての場合は、dplyrを使用してこの操作を行うことができます。

library(dplyr) 
library(ggplot2) 

meanPrice <- dt %>% group_by(Year) %>% summarise(meanPrice = mean(Price)) 
ggplot(meanPrice, aes(x = Year, y = meanPrice)) + geom_line() 

それは後者だ場合、あなたはこれを行うことができます。

meanPrice2 <- dt %>% group_by(Region, Year) %>% summarise(meanPrice = mean(Price)) 
ggplot(meanPrice2, aes(x = Year, y = meanPrice, colour = Region)) + geom_line() 
+0

ねえ、これはうまくいきましたが、私が私のグラフをプロットすると、データは4回現れます!上記の画像を参照してください。これは別の質問を保証するかもしれませんが、そこには何が起こっていますか? – gizzard

+0

わかりませんが、私はこれでは分かりませんが、問題には、通常はそれほど多くの目盛りがない年変数があると感じています。そのクラスをチェックしましたか? –

0

は、あなたのデータがdfというデータフレームに格納されていると仮定します。ここでは、Yearあたりの平均Priceを得るために何ができるかです:

あなたが Regionあたり Yearあたりの平均をしたい場合は
aggregate(Price ~ Year, df, mean) 

aggregate(Price ~ Year + Region, df, mean)