绘制R中的标准误差

use*_*562 7 r

我有关于某些鱼类捕获率的数据.

fish 1  fish 2  fish 3
0.000   3.265   9.872
2.147   1.013   0.000
Run Code Online (Sandbox Code Playgroud)

我使用以下方法计算了每条鱼的平均捕获率:

a <- colMeans(df)
Run Code Online (Sandbox Code Playgroud)

我还计算了标准误差:

stdError <- (sapply(df,sd))/sqrt(length(df))
Run Code Online (Sandbox Code Playgroud)

我使用以下方法创建了一个dotplot:

dotplot(a, xlab="mean catch", ylab = "species",las =2,)
Run Code Online (Sandbox Code Playgroud)

如何在此图中添加误差线?如果可能的话,我宁愿不使用ggplot.我目前正在使用R中的内置函数,但可以访问莱迪思.

对不起,这可能是一个基本问题,我对R中的情节完全不熟悉.

MrF*_*ick 7

dotplot是一个晶格函数,大多数默认的晶格函数对置信区间没有很大的支持.该Hmisc包扩展了大多数晶格函数,以更好地结合置信区间.

这是一个如何使用它的例子.请注意,我们将您想要绘制的数据组合到data.frame中,以便我们可以使用适当的公式symtax

mm<-data.frame(a,stdError, fish=names(a))

library(lattice)
library(Hmisc)
Dotplot(fish~Cbind(a, a-stdError, a+stdError), mm, 
    xlab="mean catch", ylab = "species",las =2)
Run Code Online (Sandbox Code Playgroud)

这会产生

在此输入图像描述

请注意,在Hmisc调用版本时调用函数Dotplotlattice版本dotplot; 资本化问题.

在这里,我刚刚从平均值中添加/减去了一个标准误差.您可以随意计算置信区间.