2016-12-16 14 views
1

Добрый вечер, У меня странная проблема. У меня есть данные о «аэропортах», данные включают в себя переменный «тип» - небольшой аэропорт, большие, вертодромы и т. Д. Я пытаюсь подмножество (в новом объекте) ТОЛЬКО крупные аэропорты и аэростаты.Подмножество с символом &

код выглядит следующим образом:

airportsBIG <- subset(airportsUS, type == "large_airport" & type =="balloonport") 

проверить его отдельно:

airportsBIG <- subset(airportsUS, type == "large_airport") 

и это работа. Не работает, когда я пытаюсь объединить их в строку с символом «&». Что я делаю не так?

Спасибо

ответ

4

Причина & не работает, потому что они не находятся в той же строке, но в разных рядах. & проверяет, находятся ли оба значения в одной строке или нет. В этом случае нам нужно %in%

subset(airportsUS, type %in% c("large_airport", "balloonport")) 

Однако, если мы проверяем возможные подстроки,

subset(airportsUS, grepl("large_airport", type) & grepl("balloonport", type)) 

Или

subset(airportsUS, 
    grepl("\\blarge_airport\\b.*\\bballoonport|\\bballoonport\\b.*\\blarge_airport\\b", 
        type)) 
+1

Спасибо большое !!! Работаю отлично !!! Благодарим вас за разъяснение! – Pon4a