至R日期的累积曲线

dsf9zpds  于 2024-01-03  发布在  其他
关注(0)|答案(1)|浏览(129)

我目前正在做一个项目,我需要知道从哪一天开始做鸟类监测更方便/相关。为了做到这一点,我想做一个累积曲线与累积数量的物种(y轴)为每个日期(x轴).我最初使用的specaccum函数从vegan包,如果一个日期等于一个网站.虽然这项工作很好,给予重复次数的概述(或访问)我会需要在外地,它不提供我的信息,我想知道,使我知道大约哪个日期是更相关的出去(因为时间方面对鸟类的外观很重要)。我也简单地采取了每个日期的物种数量,并用ggplot可视化它,它给了我一个相当不错的全景,但我的主管想要一个累积曲线
下面是我的一个框架的几行的副本,以及我到目前为止所做的:
数据为法文Espèce = Species

  1. PDM<- data.frame(
  2. Espèce= c("Corneille noire", "Alouette des champs", "Pipit farlouse", "Faisan de colchide", "Faisan de colchide", "Faisan de colchide",
  3. "Pipit farlouse", "Pipit farlouse", "Alouette des champs", "Corneille noire", "Mésange charbonnière", "Merle noir",
  4. "Étourneau sansonnet", "Pipit farlouse", "Pipit farlouse", "Alouette des champs", "Pipit farlouse", "Accenteur mouchet",
  5. "Linotte mélodieuse", "Corneille noire", "Corbeau freux", "Alouette des champs", "Pinson des arbres", "Pipit farlouse",
  6. "Merle noir", "Accenteur mouchet", "Mésange bleue", "Pigeon ramier", "Pigeon colombin", "Mésange charbonnière",
  7. "Faisan de colchide", "Mouette rieuse", "Vanneau huppé", "Corneille noire", "Corneille noire", "Pigeon ramier",
  8. "Pipit farlouse"),
  9. Nombre= c(2, 5, 3, 1, 2, 1, 6, 6, 2, 3, 1, 1, 6, 6, 8, 1, 1, 1, 4, 2, 1, 7, 8, 3, 2, 6, 1, 1, 1, 4, 2, 1, 2, 3, 1, 4, 7, 2, 3, 1, 4, 7, 6, 5),
  10. Date = c("04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022",
  11. "04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022", "04/01/2022",
  12. "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022",
  13. "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022",
  14. "21/01/2022", "21/01/2022", "21/01/2022", "21/01/2022"))

个字符
下面是ggplot:

  1. PDM <- PDM %>%
  2. group_by(Date) %>%
  3. summarise(n_sp = length(Espèce))
  4. ggplot(PDM_sp) + aes(x= Date, y = n_sp) +geom_point() + geom_smooth(fill = "lightblue") + theme_classic() + ylab("Number of species")+geom_label_repel(aes(label = as.character(Date)),
  5. box.padding = 0.35,
  6. point.padding = 0.7,
  7. segment.color = 'black')+ labs(title = "Number of species through time", subtitle = "Site1")


这就是我要找的:Red line representing what I would like这似乎很简单,但由于某些原因,我很难弄清楚如何计算每个日期的物种的数量(以便之后累积每个数字)。

mlmc2os5

mlmc2os51#

有很多方法,但是因为你使用了vegan::specaccum,所以你也可以使用它来添加任意顺序的采样单位,参数为method="collector"。这应该可以工作(未经测试,甚至没有你的数据):

  1. i <- order(PDM$Date)
  2. specaccum(PDM[i, ], method = "collector") # order PDM by Date and collect

字符串

相关问题