Сравнение двух векторов в операторе if

Я хочу поставить условие остановки внутри функции. Условие состоит в том, что если первый и второй элементы должны идеально совпадать по порядку и длине.

A <- c("A", "B", "C", "D")
B <- A
C <- c("A", "C", "C", "E")

> A == B
[1] TRUE TRUE TRUE TRUE

Это хорошая ситуация для продвижения вперед.

> A == C

[1]  TRUE  FALSE TRUE FALSE

Поскольку есть одно ложное условие, нужно остановиться и вывести, что условие не выполняется во 2-м и 4-м столбцах.

if (A != B) {
           stop("error the A and B does not match at column 2 and 4"} else {
            cat ("I am fine") 
                }
Warning message:
In if (A != B) (stop("error 1")) :
  the condition has length > 1 and only the first element will be used

Я пропустил что-то очевидное? Также я могу вывести, где находятся ошибочные позиции?

36
задан Paul Hiemstra 29 April 2012 в 20:24
поделиться