【问题标题】:Make a data frame of two columns based on values less than a threshold value in column 2 in r [duplicate]根据小于r中第2列阈值的值制作两列的数据框[重复]
【发布时间】:2019-11-27 04:30:23
【问题描述】:

我想创建一个数据框,它的条目仅低于某个定义的阈值,并与 b 列进行比较,从而排除条目“OP2775iib SAV OP2958i_b POR”。

我试过这段代码:

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

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

[.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”

【问题讨论】:

  • data[data$b &lt; threshold,] 应该可以工作。

标签: r dataframe max threshold


【解决方案1】:

我会建议 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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-17
    相关资源
    最近更新 更多