You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何计算间隔清空陷阱的每日甲虫捕获量(R语言实现)

计算陷阱清空间隔内的甲虫日捕获量

现有甲虫捕获量及陷阱清空的年积日(doy)数据,需计算陷阱每周期清空时的每日甲虫捕获量,计划按以下步骤实现:

  • 补全缺失的doy日期
  • 计算陷阱清空间隔的天数(包含清空当日)
  • 将捕获量按间隔天数均分得到每日数量

已完成部分R代码,以下是完整实现方案:

library(dplyr)

# 示例数据
df <- data.frame(count = c(10,15,23),
                 doy = c(6, 11,15))

# 生成目标日期范围的数据集
doy.df <- data.frame(doy = 5:20)

# 完整计算流程
result <- doy.df %>%
  full_join(df, by = "doy") %>%
  arrange(doy) %>%
  mutate(c0 = coalesce(count, 0)) %>%
  mutate(cumsum = cumsum(c0)) %>%
  # 标记每个清空周期的分组:找到所有有count的行,向前填充分组ID
  mutate(group_id = ifelse(!is.na(count), row_number(), NA)) %>%
  fill(group_id, .direction = "up") %>%
  # 计算每个周期的天数:当前周期下一个清空日 - 当前周期起始日 +1
  group_by(group_id) %>%
  mutate(period = lead(doy, default = first(doy)) - first(doy) + 1) %>%
  ungroup() %>%
  # 计算每日捕获量:当前周期的总捕获量 / 周期天数;无后续数据的日期设为NA
  mutate(daily = ifelse(!is.na(group_id), 
                        count[match(group_id, which(!is.na(count)))] / period, 
                        NA)) %>%
  # 调整列顺序,匹配预期输出
  select(doy, count, c0, cumsum, period, daily)

# 查看结果
print(result, na.print = "NA")

预期输出

doy count c0 cumsum period daily
1    5    NA  0      0      2     5
2    6    10 10     10      2     5
3    7    NA  0     10      5     3
4    8    NA  0     10      5     3
5    9    NA  0     10      5     3
6   10    NA  0     10      5     3
7   11    15 15     25      5     3
8   12    NA  0     25      4     6
9   13    NA  0     25      4     6
10  14    NA  0     25      4     6
11  15    23 23     48      4     6
12  16    NA  0     48     NA    NA
13  17    NA  0     48     NA    NA
14  18    NA  0     48     NA    NA
15  19    NA  0     48     NA    NA
16  20    NA  0     48     NA    NA

代码说明

  1. 补全日期:通过full_join将目标日期范围和原始数据合并,补全缺失的doy日期
  2. 周期分组:用group_id标记每个清空周期,通过fill向前填充分组ID,确保周期内所有日期属于同一分组
  3. 计算周期天数:每个周期的天数为下一个清空日(或当前周期起始日,若为最后一个周期)减去当前周期起始日再加1,确保包含清空当日
  4. 计算日捕获量:将每个周期的总捕获量除以周期天数,得到该周期内每日的平均捕获量;无后续清空数据的日期,daily设为NA

内容的提问来源于stack exchange,提问作者maycca

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 11:23:37