2016-01-06 2 views
2

У меня есть вектор в следующем формате:Handle NA в R при вызове as.numeric

> test <- c("3", "5", "?", "7") 
> test <- as.numeric(test) 
> test 
[1] 3 5 NA 7 

Можно ли определить, что происходит с отсутствующими значениями при вызове as.numeric? Я хотел бы использовать средний, средний или любой другой подходящий расчет других значений.

+0

Не изнутри 'as.numeric' AFAIK, но вы можете легко заменить' записи NA' после –

+0

Вы могли бы написать метод (с 'as.double'). –

ответ

1

То, что вы запрашиваете, вряд ли возможно. Если вы хотите заменить значение на среднее значение, сначала вы должны прочитать все значения. Однако, вы можете исправить это впоследствии:

test[is.na(test)] <- mean(test, na.rm=TRUE) 
Смежные вопросы