Сопоставить значения в двух ячейках и вернуть значение в третьем столбце - PullRequest
0 голосов
/ 22 февраля 2019

Я хочу сравнить два столбца, если значения в каждой ячейке совпадают, а затем создать новую ячейку, сказать, что она соответствует или нет.Я использую функцию match и получаю странный результат, или я делаю что-то неправильно

мои данные выборки

df <- dput(structure(list(col1 = c("day", "day", "day", "day", "day", 
"day", "day", "night", "night", "day", "day", "day", "day", "day", 
"day", "night", NA, "day", "night", "day"), col2 = c("day", "day", 
"day", "day", "day", "day", "day", "night", "day", "day", "day", 
"day", "day", "day", "day", "night", "day", "day", "day", "day"
)), row.names = c(NA, 20L), class = "data.frame"))

Я хочу проверить, совпадают ли значения в col1 и col2

tmp$match <- match(tmp$col1, tmp$col2)

Вот что я получаю

    col1  col2 match
1    day   day     1
2    day   day     1
3    day   day     1
4    day   day     1
5    day   day     1
6    day   day     1
7    day   day     1
8  night night     8
9  night   day     8
10   day   day     1
11   day   day     1
12   day   day     1
13   day   day     1
14   day   day     1
15   day   day     1
16 night night     8
17   NA   day     8
18   day   day     1
19 night   day     8
20   day   day     1

Как видите, любая строка, имеющая два day возврата 1, но два night и dayи night возвращаемое значение 8 (даже пропущенное значение)

Я хочу получить правильные результаты для совпадения с другим значением в match столбец

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...