ошибка не удалось найти функцию "%>% <-" при назначении NA значениям вне диапазона во фрейме данных со многими столбцами - PullRequest
0 голосов
/ 24 декабря 2018

Допустим, я хочу назначить NA значениям, не входящим в диапазон [0.0, 3.0].Для этого мне следует 1) выбрать значения и 2) присвоить значения NA.

Я читаю решение, используя select_if() по ссылке ниже

Выбор столбцовс диапазоном значений в R

С помощью решения мне удалось выбрать нужные значения.

library(tidyverse)
set.seed(100)
df = as.data.frame(matrix(rnorm(100) + 1, ncol = 10))
df %>% select_if(~ all(.x > 0 & .x < 3))

Но когда я назначил NA, как показано ниже:

df %>% select_if(~ all(.x > 0 & .x < 3)) <- NA

произошла ошибка:

не удалось найти функцию "%>% <-" </p>

Что я пропустил?

1 Ответ

0 голосов
/ 24 декабря 2018

select_if здесь не является правильной функцией, более того, прочитайте комментарий @ r2evan's, чтобы понять, почему он на самом деле не работает.

Попробуйте использовать mutate_all с replace.

library(tidyverse)

df1 <- df %>%  mutate_all(funs(replace(., . > 0 & . < 3, NA)))

То же самое с базой R, вы можете попробовать

df[df > 0 & df < 3] <- NA
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...