【问题标题】:proposicional logic in string matches combination字符串匹配组合中的命题逻辑
【发布时间】:2019-03-06 12:31:38
【问题描述】:

当我想组合字符串匹配时,我在 R 中遇到问题,例如:

X <- colnames(df[substr(colnames(df),start=1,stop=3) == "PEC" | substr(colnames(df),start=1,stop=5) == "PRE1_" & substr(colnames(df),start=1,stop=5) != "PEC3"])

X 将成为未来线性回归的自变量的 df。 X 由PECZZZPRE1_ZZZ 组成,其中Z 字符是0 到9 之间的任意数字。PEC3 是因变量。因此,由于第一个字符串匹配将具有PEC3,因为调用PEC 意味着PEC3,我正在使用第三个字符串匹配来删除它。但是,上面字符串匹配中PEC3 的结果是:

TRUE | FALSE & FALSE = TRUE

为什么?如果TRUE | FALSE = TRUETRUE &amp; FALSE = FALSE。还是不遵循从左到右的共同顺序规则?

【问题讨论】:

  • 最好将每个块包裹在括号内

标签: r boolean logic


【解决方案1】:

在 R 中,&amp; 位于 | 之前。在此处查看运算符及其顺序的完整列表:https://stat.ethz.ch/R-manual/R-patched/library/base/html/Syntax.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-16
    • 1970-01-01
    • 2018-02-28
    • 2020-06-12
    • 2018-09-10
    • 1970-01-01
    • 2016-03-18
    相关资源
    最近更新 更多