В объекте класса data.frame с {dplyr} или R {base}.
Как выбрать (или удалить) строки, имеющие одинаковые значения в столбце 1 и столбце 2 (и сохранив значения столбца 3).

Я понятия не имею (использование отдельных функций?)

test <- data.frame(column1 = c("paris","moscou", "rennes"),
                   column2 =  c("paris", "lima", "rennes"), 
                   column3 =c(12,56,78))

> print (test)
column1 column2 column3
1   paris   paris      12
2  moscou    lima      56
3  rennes  rennes      78

Пример:
строка 1: paris paris
строка 4: rennes rennes

library(dplyr)
test2 <- test %>%
    filter(column1 == column2)

print (test2)

Ошибка: уровни наборов факторов различны

Wilcar

Ответов: 2

Ответы (2)

В dplyr используйте filter для получения определенных строк и select для получения определенных столбцов.

Для data.frame вам нужно as.character, чтобы сопоставить строки:

library(dplyr)
test %>%
  filter(as.character(column1) == as.character(column2))

Мы можем использовать subset из базы R

subset(test, as.character(column1) == as.character(column2))

2022 WebDevInsider