Как переоценить определенные точки данных в R?

#r #plyr

#r #plyr

Вопрос:

Я пытаюсь переоценить точки данных для одной из переменных в наборе данных, с которым я работаю.

Переменная присваивает race . Вместо того, чтобы указывать расу в качестве точки данных, это число. Я пытаюсь переоценить число так, чтобы в нем была указана соответствующая раса.

 library(plyr)
as.character(data$MRACEHISP)
nat2015p01_new2020$mothersrace <- revalue(data$MRACEHISP, c("1"="WHITE", "2" = "BLACK", "3" = "AIAN", "4"="ASIAN", "5" = "NHOPI", "6" = "MULTIPLE", "7" = "HISPANICE", "8" = "OTHER" ))
  

Я продолжаю получать следующую ошибку:
Ошибка в переоценке(nat2015p01_new2020$MRACEHISP, c( 1 = «WHITE», 2 = «BLACK», : x не является фактором или символьным вектором.

Я не уверен, как решить эту ошибку и решить проблему. Любая помощь будет оценена. Спасибо!

Ответ №1:

Вам необходимо сохранить значения символов в data

 library(plyr)
data$MRACEHISP <- as.character(data$MRACEHISP)
nat2015p01_new2020$mothersrace <- revalue(data$MRACEHISP, c("1"="WHITE", "2" = "BLACK", "3" = "AIAN", "4"="ASIAN", "5" = "NHOPI", "6" = "MULTIPLE", "7" = "HISPANICE", "8" = "OTHER" ))
  

Комментарии:

1. Я попробовал вариант 1 и получил ошибку: ошибка в переоценке (nat2015p01_new2020$ MRACEHISP, c(1 = «БЕЛЫЙ», 2 = «ЧЕРНЫЙ», : x не является фактором или символьным вектором. Теперь я только что попробовал вариант 2 и получил ошибку: Ошибка: неожиданный ‘=’ в «nat2015p01_new2020 $mothersrace <- переоценка (nat2015p01_new2020 $ MRACEHISP, c (1=». Есть ли какой-либо другой метод?

2. Намеренно ли вы используете два разных фрейма данных в варианте 1 (data и nat2015p01_new2020?)

3. это моя ошибка, все они являются одним и тем же фреймом данных, я просто забыл изменить его при вводе вопроса. В моем R это тот же фрейм данных.

4. Затем, если вы записали данные $MRACEHISP <- как.character(данные $MRACEHISP) с правильным фреймом данных перед строкой переоценки, это должно сработать. Либо вы что-то неправильно написали, либо что-то не так с вашими данными. Можете ли вы сказать, каков вывод typeof(data $MRACEHISP) до и после строки as.character