【问题标题】:Boxplotting count data with a continuous variable in R在 R 中使用连续变量绘制计数数据的箱线图
【发布时间】:2021-04-03 13:04:38
【问题描述】:

我在绘制计数数据时遇到问题。我有一个包含 420 个研究地点的数据集,其中包含每个地点的鸟类观察和海拔数据。研究地点在行中,不同的鸟类和海拔在列中。我的目标是绘制不同鸟类在海拔梯度(X = 鸟类,Y = 海拔)中的出现情况。

siteID BirdA BirdB BirdC elevation
1 3 2 0 275
2 1 5 1 550
3 0 0 3 850
4 4 3 2 322

我的问题是鸟类数据是计数数据。例如,站点 1 可能有三对鸟 A、两对鸟 B 和零对鸟 C,这使得箱线图有些困难。 boxplot 命令为具有不同观察量的站点创建不同的框(用于零观察、一个观察、两个观察、三个观察等的自己的框)。

我希望每种鸟类只需要一个框,并且我希望箱线图能够注意到具有 若干 对某些鸟类的地点/海拔,因为它提供了该特定鸟类最佳海拔的线索鸟类。我可以将计数数据更改为存在-不存在,但这会改变我的结果。

我发现解决方案是将具有三个 BirdA 观测值的行更改为三行,其中一个 BirdA 观测值位于某个高度。是否有命令或包可以帮助我将数据从计数数据更改为二项式?或者有没有更简单的方法来绘制这些值?

【问题讨论】:

  • 你能解释一下你想要的输出吗?对于每种鸟类,您需要一个箱线图来指示计数的分布,以及您希望如何结合高程因子?
  • 我希望每种鸟类都有一个箱线图,表明海拔因子的分布。如果您明白我的意思,我对计数的分布不感兴趣?这是一个链接,其中包含我正在寻找的示例:imgur.com/a/bYuZl25
  • 问题是,如果我重塑数据,使每个唯一站点 id 有 3 行,每行有一种鸟,每种鸟都有相同的海拔,因此每个海拔的分布鸟对他们来说保持不变。我想不出任何其他方法可以为每种鸟类提供不同的海拔值。
  • 欢迎堆栈溢出。请通过粘贴数据样本使您的问题可重现:使用dput(head(your_data_sample, n)) 其中n 足以证明问题的数据。这使其他人更容易测试和验证解决方案。

标签: r boxplot


【解决方案1】:

我不认为在此设置框中绘图适合 cmets 中的Anoushiravan R mentioned。此外,我希望这里的解决方案有点帮助:

library(ggplot2)
ggplot(df1, aes(fill=siteID, y=Count, x=Bird)) +
    geom_bar(position="stack", stat="identity") +
    theme_bw() +
    facet_grid( ~ elevation)

【讨论】:

  • 谢谢 Anoushiravan R 和 TarJae。这极大地帮助了我了解如何展示和不展示我的数据。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-05
  • 1970-01-01
相关资源
最近更新 更多