gpt4 book ai didi

r - 按类别绘制均值和标准差

转载 作者:行者123 更新时间:2023-12-03 14:51:20 24 4
gpt4 key购买 nike

我试图用三个因子水平绘制一个均值和标准差的图。

(在互联网上搜索了两个小时,然后查看了 Rbook 和 Rgraphs 书,我仍然没有找到答案。我认为这是因为这是一个非常简单的问题。)

我有一个包含三列的简单数据框:我的类别、平均值、标准差。

我想用按类别及其标准差的平均值绘制一个图,就像
this one (edit: link broken)

我的数据框看起来像这样

  color     mean.temp      sd        
black 37.93431 2.267125
red 37.01423 1.852052
orange 36.61345 1.339032

我很抱歉问这个愚蠢的问题,但我真诚地找不到我简单问题的任何简单答案。

最佳答案

创建一个 data.frame保存您的数据:

foo <- data.frame(color=c("black","red","orange"),
mean.temp=c(37.93431,37.01423,36.61345),
sd=c(2.267125,1.852052,1.339032))

现在,我们首先将均值绘制为点,确保我们在水平 ( xlim ) 和垂直 ( ylim ) 上有足够的空间,抑制 x 轴注释 ( xaxt="n" ) 和所有轴标记 ( xlab="", ylab="" )。
plot(1:3,foo$mean.temp,pch=19,xlab="",ylab="",xaxt="n",xlim=c(0.5,3.5),
ylim=c(min(foo$mean.temp-foo$sd),max((foo$mean.temp+foo$sd))))

接下来,我们将标准偏差绘制为线。您也可以使用三个独立的 lines命令,这可能更容易阅读。这样,我们首先通过 rbind() 将数据收集到矩阵中。 . R 会自动将这些矩阵转换为向量并回收它们。 NA s 在那里,所以我们不会将一行的末尾连接到下一行的开头。 (尝试移除 NA,看看会发生什么。)
lines(rbind(1:3,1:3,NA),rbind(foo$mean.temp-foo$sd,foo$mean.temp+foo$sd,NA))

最后,注释 x 轴:
axis(side=1,at=1:3,labels=foo$color)

means with sds

关于r - 按类别绘制均值和标准差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24626280/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com