Приведение значений в R

У меня есть текстовый файл с идентификаторами электронной почты, которые я читаю в R (пример 1). Иногда поле пустое (пример 2).

example 1: To: admin@naukrioverseas.com
example 2: To:

Я использую следующий код для чтения данных:

to <- grep(a, pattern = "To:.*", value = T)
to <- unlist(regmatches(to, gregexpr("([_a-z0-9-]+(\\.[_a-z0-9-]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*(\\.[a-z]{2,4}))", to)))

У меня есть аналогичные другие поля, такие как От, Тема и т. Д. После извлечения значений я преобразую их во фрейм данных.

dat <-  data.frame(from, to, date, subj)

Всякий раз, когда у меня есть файл с отсутствующими значениями (пример 2), получают пустой символ длиной 0, который выдает ошибку при использовании их для создания фрейма данных. Есть ли способ я могу привести фиктивное значение, как "NoID", когда я получаю пустой символ. Я попробовал следующее, но, похоже, ничего не изменилось.

to <- if(all(nchar(to) == 0)){
        to == "No mail add"
} else {
        to
}

или это:

date <- if(is.null(date)){
        date == 0
} else {
        date
}

Могу ли я привести значение или NA, чтобы я мог проанализировать каждый почтовый идентификатор?

0 ответов

Другие вопросы по тегам