我有一个简单的数据框data
V1 V2 V3 V4 V5
1 3 3 3 5 6
2 3 4 6 10 12
3 5 6 8 10 11
4 4 5 7 9 11
5 2 3 5 8 9
该数据代表每轮比赛期间的表现。例如在游戏 4 中,一个人在第三次迭代中得分 7。
我正在尝试创建这样的情节(情节取自这里):
其中 x 轴上将四舍五入,y 轴上将标准偏差作为条形的平均性能。第一轮的平均表现将在列 V1 (3.4) 中平均,第二轮为 4.2。标准偏差也是基于 V 列计算的。
感谢 BasterField,我正在通过以下方式转换我的数据:
df$n <- rownames(df)
df <- melt(df, id.vars="n", value.name="perf", variable.name="iter" )
dfc <- ddply(df, .(iter), summarise, se = sd( perf )/sqrt(length(perf)), perf = mean(perf))
这给了我以下结果:
iter se perf
1 V1 0.5099020 3.4
2 V2 0.5830952 4.2
3 V3 0.8602325 5.8
4 V4 0.9273618 8.4
5 V5 1.0677078 9.8
但后来,当我尝试使用 ggplot
ggplot(dfc, aes(x=iter, y=perf))+geom_errorbar(aes(ymin=perf-se, ymax=perf+se), width=.1)+geom_line()+geom_point()
我收到:geom_path: Each group consist of only one observation. Do you need to adjust the group aesthetic?
情节是在没有连接线的情况下构建的:
另外我希望我的 Y 轴的最大值为 20。