Хотелось бы узнать, есть ли более простой способ подстановки целочисленных столбцов data.frame.
Моя цель - изменить числовые столбцы в моем data.frame, не касаясь чисто целочисленных столбцов (в моем случае, содержащих 0 или 1). Целочисленные столбцы изначально были факторными уровнями, превращенными в фиктивные переменные, и должны оставаться такими, какие они есть. Поэтому я хочу временно удалить их.
Чтобы отличить числовые значения guish от целочисленных столбцов, я использовал отсюда версию OP ( Проверьте, является ли число целым ).
Но is.wholenumber
возвращает матрицу ИСТИНА / ЛОЖЬ вместо одного значения на столбец, например is.numeric
, поэтому sapply(mtcars, is.wholenumber)
мне не помогает. Я придумал следующее решение, но подумал, что должен быть более простой способ?
data(mtcars)
is.wholenumber <- function(x, tol = .Machine$double.eps^0.5) abs(x - round(x)) < tol
integer_column_names <- apply(is.wholenumber(mtcars), 2, mean) == 1
numeric_df <- mtcars[, !integer_column_names]