Tuesday, 15 July 2014

r - How do I convert a numeric vector into binary numbers? -



r - How do I convert a numeric vector into binary numbers? -

i converted factor numeric vector i.e. "male" , "female" "1" , "2" r code, "as.numeric(data$gender)". however, convert numeric vector binary numbers i.e. "1" representing "male" , "2" representing "female", "1" representing "male" , "0" representing "female". please kindly advice me on how done? give thanks much, , help much appreciated.

here 3 alternatives:

sample data:

set.seed(1) x <- sample(c("male", "female"), 10, true) x # [1] "male" "male" "female" "female" "male" "female" "female" "female" "female" "male" option 1: utilize == (assumes have these 2 options). as.numeric(x == "male") # [1] 1 1 0 0 1 0 0 0 0 1 option 2: utilize named key. key <- setnames(0:1, c("female", "male")) key[x] # male male female female male female female female female male # 1 1 0 0 1 0 0 0 0 1 option 3: utilize factor specifying labels. factor(x, c("male", "female"), labels = c(1, 0)) # [1] 1 1 0 0 1 0 0 0 0 1 # levels: 1 0

note you'll still need as.numeric(as.character()) if wanted numeric vector:

as.numeric(as.character(factor(x, c("male", "female"), labels = c(1, 0)))) # [1] 1 1 0 0 1 0 0 0 0 1

r

No comments:

Post a Comment