如何在数据集中找到组中的方差[R]

时间:2015-08-09 11:55:10

标签: r ggplot2

我试图找到我的数据集分组(从AE到AE)的标准差,看起来有点像这样:

GLES20.glClear( GLES20.GL_COLOR_BUFFER_BIT | GLES20.GL_DEPTH_BUFFER_BIT);
// Drawing shapes

我用ggplot绘制了pay_ee和pay_em。现在我很难将我的ggplot中的标准偏差从一个AE表示到另一个AE。这意味着我必须首先计算从一个AE到下一个AE的标准偏差。然后在我的ggplot中绘制它。

我试图引用这个link答案,但问题已经解决了整个数据集。

你知道我该怎么办?

1 个答案:

答案 0 :(得分:0)

使用dplyrtidyrggplot2可以获得您想要的效果。

library(dplyr)
library(tidyr)
library(ggplot2)

df <- read.table(header = TRUE,
                 text = 
"ID   Pay_ee  Pay_em Post
1    100      102   AE
1    105      112   RE
1    103      112   RE
1    106      123   RE
1    101      121   RE
1    109      143   AE
1    110      113   ME
1    115      132   RE
1    123      120   AE
1    100      120   AE
1    100      120   RE")

df %>% 
  gather(key, value, starts_with("Pay_")) %>% 
  group_by(Post, key) %>%                      
  summarize(m = mean(value), 
            sd = sd(value)) %>% 
  print %>%

  ggplot(.) + 
  theme_bw() + 
  aes(x = Post, y = m, ymin = m - sd, ymax = m + sd, color = key) + 
  geom_point(position = position_dodge(width = 0.5)) + 
  geom_errorbar(position = position_dodge(width = 0.5)) + 
  ylab("Pay")

enter image description here