2015-10-14 5 views
0

У меня есть вектор символов (столбец) в data.frame, который содержит три правильных значения, состоящих из «положительных», «отрицательных» и NA, вдоль небольшого числа неправильные значения. Я хочу заменить неправильные значения, т. Е. Все, кроме «Положительные», «Отрицательные» и «NA» с «Положительным», я могу grep для NOT «Positive» или «Negative», используя grep и инвертировать = TRUE аргумент, и получить все, кроме случаев «Отрицательных» и «Положительных», но я не понял, как дополнительно, а не заменять любые случаи NA. Я также посмотрел на команду sub, но у нее нет опции инверсии. Какие-либо предложения?строки поиска и замены, не соответствующие шаблону, и NA в R

+2

Пожалуйста, прочитайте информацию о том, как дать [минимальный воспроизводимый пример] (http://stackoverflow.com/questions/5963269/how-to-make-a-great -r-воспроизводимая-пример/5963610). – Jaap

ответ

3

Это должно работать:

df[!is.na(df$column) & !df$column %in% 
     c("Positive","Negative"), "column"] <- "Positive"