логика высказываний в комбинации строк - PullRequest
0 голосов
/ 06 марта 2019

У меня проблема в 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 состоит из PECZZZ, PRE1_ZZZ, где символ Z - это любое число от 0 до 9. PEC3 является зависимой переменной. Так как первое совпадение строки будет иметь PEC3, так как вызов PEC подразумевает PEC3, я использую третье совпадение строки, чтобы удалить его. Однако результаты для PEC3 в приведенных выше совпадениях строки:

TRUE | FALSE & FALSE = TRUE

Почему? Если TRUE | FALSE = TRUE и TRUE & FALSE = FALSE. Или оно не следует правилу общего порядка слева направо?

1 Ответ

1 голос
/ 06 марта 2019

В R & предшествует |.Полный список операторов и их порядок смотрите здесь: https://stat.ethz.ch/R-manual/R-patched/library/base/html/Syntax.html

...