【问题标题】:Selecting a subset of rows based on a flexible combination of columns meeting a strict criteria根据符合严格标准的列的灵活组合选择行的子集
【发布时间】:2013-11-13 03:19:45
【问题描述】:

我需要帮助解决使用 R 的数据子集问题。这是数据框的一部分:

df <- read.table(text="
Name    C1      C2      C3      C4      C5
Bill    0.006   0.003   0       0.002   0
Frank   0       0.333   0.23    0.12    0
Ted     0.567   0.011   0.001   0.002   0
Jimmy   0.001   0.003   0.001   0.002   0
Sam     0.002   0.002   0.32    0.45    0.002", header=T)

我想要做的是创建一个新的数据框,其中包含那些行的子集,其中第 2 到第 6 列中的值小于 0.05。

诀窍是我想设置一个灵活的标准,这样在任何特定的行中,5 个值中只有 4 个需要

因此,例如,Bill 和 Ted 会满足此标准,但 Sam 不会。

我尝试了各种应用功能,但这些功能仅适用于完整的行数据。我需要某种条件语句来单独评估每一行。

我不知道该怎么做。

【问题讨论】:

    标签: r dataframe subset threshold


    【解决方案1】:

    这就是你所追求的吗?

    > df[rowSums(df[,2:6]<0.05)>=4,]
       Name    C1    C2    C3    C4 C5
    1  Bill 0.006 0.003 0.000 0.002  0
    3   Ted 0.567 0.011 0.001 0.002  0
    4 Jimmy 0.001 0.003 0.001 0.002  0
    

    【讨论】:

    • 宾果游戏!太容易了。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2018-09-07
    • 1970-01-01
    • 2017-08-17
    • 2013-08-27
    • 2017-01-29
    • 2019-06-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多