2017-02-27 64 views
0

我有跟着data.frame:如何在這裏創建一個binned平均圖?

P value 
1 -1.68376331 
0.99 -0.41567108 
0.96 0.23841294 
0.96 -0.22990539 
0.96 -0.09554575 
0.955 1.67393163 
0.82 -0.62701762 
0.81 1.32506612 
0.81 0.10928334 
0.78 0.55526814 
0.78 0.22339582 
0.70 -0.70335192 
0.69 1.34438953 
0.68 -0.09821771 
0.67 0.33202775 

我想繪製每三人小組的平均值(以P型柱的順序)值。我希望他們沿x軸繪製,以便第一組計算的是最左邊的點,第二組的平均值是第二個最左邊的點,等等。有人知道這可以做什麼嗎?

+0

您是否可以傳遞您的數據以便我們可以將其複製/粘貼到我們的R會話中?對於沒有三個值的組,如0.955會發生什麼情況? –

回答

0

你可以試試:

ggplot(d, aes(V1, V2)) + geom_point() + theme_bw() + 
    stat_summary(fun.y = "mean", colour = "red", size = 2, geom = "point") + 
    stat_summary(fun.y = "mean", geom = "line") 

enter image description here

但是,爲什麼不使用針對此問題的簡單的箱線圖:

boxplot(V2 ~ V1, d) 

您可以添加使用點實例的方法:

means <- aggregate(d$V2, list(d$V1), mean) 
points(means$x, col="red", pch=18) 

您的數據

d <- structure(list(V1 = c(1, 0.99, 0.96, 0.96, 0.96, 0.955, 0.82, 
0.81, 0.81, 0.78, 0.78, 0.7, 0.69, 0.68, 0.67), V2 = c(-1.68376331, 
-0.41567108, 0.23841294, -0.22990539, -0.09554575, 1.67393163, 
-0.62701762, 1.32506612, 0.10928334, 0.55526814, 0.22339582, 
-0.70335192, 1.34438953, -0.09821771, 0.33202775)), .Names = c("V1", 
"V2"), class = "data.frame", row.names = c(NA, -15L)) 
相關問題