2016-11-24 2 views
-2

Есть ли простой способ конвертировать 2 категориальные переменные уровня в двоичный, а затем изменить имя столбца? Так, например: если бы у меня была переменная gender, как бы я мог легко кодировать женщину как 1, мужчину как 0 и изменить имя столбца на isFemale? Заранее спасибо.R Code Категорическая переменная до 1 и 0

+0

Один подход 'yourdata $ isFemale <- as.integer (yourdata $ yourvariable == "female") 'Там будет несколько обманов для этого вопроса – akrun

+0

Если это уже класс' factor', то 'as.integer (yourdata $ yourcolumn)' или 'as.numeric (yourdata $ yourcolumn) 'будет работать. Что касается изменения имен столбцов, см. Вводный материал, доступный, например, в [R tag info] (http://stackoverflow.com/tags/r/info). – Gregor

ответ

0

вы просто должны создать новый столбец и преобразования гендерной переменной в числовом

позволяет сказать, что ваши данные = данные, и гендерной переменной = секс

 data$sex <- as.factor (data$sex) 
     data$isFemale<- as.numeric (data$sex) 
1
df <- data.frame(Lett=letters[1:6], Gender = c("F","M","M","M","F","M")) 
df 
# Lett Gender 
# 1 a  F 
# 2 b  M 
# 3 c  M 
# 4 d  M 
# 5 e  F 
# 6 f  M 



levels(df$Gender) <- c(1,0) 
df 
# Lett Gender 
# 1 a  1 
# 2 b  0 
# 3 c  0 
# 4 d  0 
# 5 e  1 
# 6 f  0 

names(df)[2] <- "isFemale" 
df 
# Lett isFemale 
# 1 a  1 
# 2 b  0 
# 3 c  0 
# 4 d  0 
# 5 e  1 
# 6 f  0