R-Project中的Barplot mean / w SD

时间:2012-09-17 15:51:35

标签: r boxplot mean standard-deviation

听起来像一个微不足道的,但一些研究没有提出一个优雅的解决方案: 我有一个数据框,结构有分类变量(GROUP)和连续读出变量(血压)。 如何制作一个简单的箱形图,显示每组的平均值及其标准偏差? 有多个组:A,B,C,D如何在数据框中执行ANOVA事后分析。它如何与Mann-Whitney-U-Test一起使用?我可以在条形图中标记显着性水平吗? 如何将此操作简化为多个连续变量(dia_bloodpressure,sys_bloodpressure,mean_bloodpressure)和sink()输出在不同的文件中(按变量名称)?

3 个答案:

答案 0 :(得分:0)

经过一番研究,我想出了agricolae包。这个提供了多组比较。对于分组条形图+/- SD或SEM,可以将生成的对象流水线化为适当的绘图功能。不幸的是,无法在图中的组之间使用重要标记。

答案 1 :(得分:0)

在R中进行了一些编程之后,我偶然发现了另一个适合医学研究的好方案:心理学。 考虑到上述问题,describe()describeBy()获取数据框的统计概览,并按分组变量对其进行排序。 函数error.bars.by()是平均值+/- SD的高级绘图函数。 该软件包提供了许多关于协变量分析的功能,这些功能在心理学研究中很有用,但也可能有助于医学和营销研究。

答案 2 :(得分:0)

可能的代码段:

library(psych)

x<-c(1,2,3,4,5,6,7,8,9,NA)
y<-c(2,3,NA,3,4,NA,2,3,NA,2)
group<-rep((factor(LETTERS[1:2])),5)
df<-data.frame(x,y,group)
df

by(df$x,df$group,summary)
by(df$x,df$group,mean)

sd(df$x) #result: NA
sd(df$x, na.rm=TRUE) #result: 2.738613

v = c("x", "y")#or
v = colnames(df)[1:2]
sapply(v, function(i) tapply(df[[i]], df$group, sd, na.rm=TRUE))

describeBy(df$x, df$group)

error.bars.by(df$x, df$group, bars=TRUE)