根据小于 r 中第 2 列阈值的值制作两列数据框

Make a data frame of two columns based on values less than a threshold value in column 2 in r

我想制作一个数据框,其中只有低于特定定义阈值的条目与列 b 进行比较,这样条目 "OP2775iib SAV OP2958i_b POR" 被排除在外。

我试过这段代码:

less_than_threshold <- data.frame(which(data[data$b < threshold]))

但它 returns 和我无法理解的错误:

错误 [.data.frame(pairwise_ind_Mdists, pairwise_ind_Mdists$Mdist < : 选择了未定义的列

这是我正在处理的数据样本:

data <- data.frame(a = c("OP2775iia MOU OP2775iib SAV","OP2775iia MOU OP2958i_a COM","OP2775iib SAV OP2958i_a COM","OP2775iia MOU OP2958i_b POR","OP2775iib SAV OP2958i_b POR"),
                           b = c(4.9022276,3.8867063,3.0126033,5.0261763,6.3745697))

threshold <- 6.3745697

我想要一个数据框,其中包含原始数据集中除最后一个条目之外的所有条目 "OP2775iib SAV OP2958i_b POR"

我建议使用 dplyr 包

library(dplyr)

data %>%
  filter(b < threshold)

                            a        b
1 OP2775iia MOU OP2775iib SAV 4.902228
2 OP2775iia MOU OP2958i_a COM 3.886706
3 OP2775iib SAV OP2958i_a COM 3.012603
4 OP2775iia MOU OP2958i_b POR 5.026176