Как заменить NA на 1 в R? - PullRequest
2 голосов
/ 15 апреля 2019

Я пробовал другие R-коды с этих сайтов для подобных вопросов, но ни один из них не сработал, поэтому я запутался.Я в основном пытаюсь заменить все значения NA в шестом столбце с именем "Item4" в наборе данных с именем "my_data1".enter image description here

И те коды R, которые я пробовал до сих пор:

b$a[is.na(b$a)] <- 1
with(b, replace(a, is.na(a), 1))

`df[,3:5][is.na(df[,3:5])] <-0`
df <- na_if(df, 'foo')
x[c("a", "b")][is.na(x[c("a", "b")])] <- 0
tidyr::replace_na(x, list(a=0, b=0))#

Однако ни один из них не работаетв моем наборе данных.эти значения NA просто не заменяются кодами.

Буду очень признателен, если кто-нибудь сможет мне помочь с этой проблемой.

1 Ответ

0 голосов
/ 15 апреля 2019

Это должно работать: - заменяет все строки в этом столбце, которые равны NA.Если он не знает класс ваших переменных, это поможет устранить неполадки.sapply (my_data1, class)

my_data1[ is.na( my_data1$Item4) , "Item4" ] <- 1

Значения, отображаемые на скриншоте как NA, на самом деле символы?Попробуйте использовать dput для обмена данными - если это так, вам понадобится:

my_data1[  my_data1$Item4 %in% "NA" , "Item4" ] <- 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...