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

如何判断剂量估计区间与实际剂量区间是否重叠并分类?

判断数值区间重叠的简便方法

我有如下结构的tibble数据,需要判断**估计剂量区间(Estimate_Min ~ Estimate_Max)和实际剂量区间(Dose_Min ~ Dose_Max)**是否重叠,需要两种输出结果:

原始数据:

library(tibble)
df <- tibble(
  ID = c(1,2,3,4,5),
  Estimate_Min = c(18,15,3,11,0.5),
  Estimate_Max = c(25,22,8,12,18),
  Dose_Min = c(7,10,4,18,6),
  Dose_Max = c(14,13,5,20,12)
)

需求1:添加布尔值标记重叠与否的Overlap列

期望输出:

# A tibble: 5 × 6
     ID Estimate_Min Estimate_Max Dose_Min Dose_Max Overlap
  <dbl>        <dbl>        <dbl>    <dbl>    <dbl> <lgl>  
1     1         18             25        7       14 FALSE  
2     2         15             22       10       13 FALSE  
3     3          3              8        4        5 TRUE   
4     4         11             12       18       20 FALSE  
5     5          0.5           18        6       12 TRUE   

需求2:更详细的区间关系分类

分类规则:

  • "IN":估计区间与实际区间至少部分重叠
  • "OVER":估计区间完全在实际区间的上方(Estimate_Min > Dose_Max)
  • "BELLOW":估计区间完全在实际区间的下方(Estimate_Max < Dose_Min)

期望输出:

# A tibble: 5 × 6
     ID Estimate_Min Estimate_Max Dose_Min Dose_Max Overlap
  <dbl>        <dbl>        <dbl>    <dbl>    <dbl> <chr>  
1     1         18             25        7       14 OVER   
2     2         15             22       10       13 OVER   
3     3          3              8        4        5 IN     
4     4         11             12       18       20 BELLOW 
5     5          0.5           18        6       12 IN     

解决方案

核心判断逻辑

对于两个规范区间[a1, a2](a1 <= a2)和[b1, b2](b1 <= b2),存在重叠的判定公式为:
a1 <= b2 & a2 >= b1

代码实现(基于dplyr)

先加载必要的包:

library(dplyr)

1. 生成布尔值重叠标记列

df_overlap_bool <- df %>%
  mutate(Overlap = Estimate_Min <= Dose_Max & Estimate_Max >= Dose_Min)

2. 生成详细区间分类列

df_overlap_detail <- df %>%
  mutate(Overlap = case_when(
    Estimate_Min <= Dose_Max & Estimate_Max >= Dose_Min ~ "IN",
    Estimate_Min > Dose_Max ~ "OVER",
    Estimate_Max < Dose_Min ~ "BELLOW",
    TRUE ~ "UNKNOWN" # 兜底逻辑,理论上不会触发
  ))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 23:15:44