Очистка значений `Inf` из фрейма данных R
В R у меня есть операция, которая создает некоторыеInf
значения, когда я преобразую датафрейм.
Я хотел бы включить этиInf
значения вNA
ценности. У меня код медленный для больших данных, есть ли более быстрый способ сделать это?
Скажем, у меня есть следующий фрейм данных:
dat <- data.frame(a=c(1, Inf), b=c(Inf, 3), d=c("a","b"))
Следующее работает в одном случае:
dat[,1][is.infinite(dat[,1])] = NA
Поэтому я обобщил это следующим циклом
cf_DFinf2NA <- function(x)
{
for (i in 1:ncol(x)){
x[,i][is.infinite(x[,i])] = NA
}
return(x)
}
Но я не думаю, что это действительно использует силу R.