我有一个数据帧,其中包含位置范围(初始和最终)和一个位置向量,如:

df <- data.frame(
   row = c("A", "B", "C", "D"), 
   Initial = c(10, 26, 48, 69), 
   Final = c(23, 47, 64, 80))
  row Initial Final
1   A      10    23
2   B      26    47
3   C      48    64
4   D      69    80

矢量:

Position <- c(32, 54, 82)

我想过滤包含属于向量的位置的行.输出将是:

  row Initial Final
1   B      26    47
2   C      48    64

请注意,最后一个位置与df初始—最终位置范围不匹配.有没有一个tidyverse的解决方案?先谢谢你.

推荐答案

inner_join(df, data.frame(Position), join_by(Initial < Position, Final > Position))

  row Initial Final Position
1   B      26    47       32
2   C      48    64       54

subset(df, mapply(\(x,y)any(x < Position & y > Position), df$Initial, df$Final))
  row Initial Final
2   B      26    47
3   C      48    64

R相关问答推荐

如何在ggplot 2线性图的每个方面显示每个组的误差条?

基于多列将值链接到NA

如何将移除事件分配给动态创建的按钮?

如何使下一个按钮只出现在Rshiny 的一段时间后?""

如何在ggplot中标记qqplot上的点?

R:从geom_ol()中删除轮廓并导出为pdf

R中边际效应包中Logistic回归的交互作用风险比

将标识符赋给事件序列,避免错误观察

将多个变量组合成宽格式

如何计算增加10米(0.01公里)的行?

如何删除R中除数字元素以外的所有元素

如何阻止围堵地理密度图?

如何显示准确的p值而不是<;0.001*?

如何使用grepl()在数据帧列表中 Select 特定字符串?

R-如何在ggplot2中显示具有不同x轴值(日期)的多行?

R:如何在数据集中使用Apply

将某个阈值以下的列中的值分类到不同的列中,否则保持该列的原样

如何在R中使用因子行求和?

如何在一个GGPLATE中绘制多个灰度平滑?

R中的交叉表