如何在20个变量的数据集和R中的3144个观察值中将分类值(Yes/No)
转换为数值(0/1)
?
答案 0 :(得分:1)
在R
我们可以做
df1[] <- +(df1=="Yes")
或者
df1[] <- lapply(df1, function(x) as.integer(x=="Yes"))
注意:如果“是”应为0且“否”为1,请替换帖子中的df1=="No"
和x=="No"
。
答案 1 :(得分:0)
“转换”很简单,但我不确定你的数据集是怎样的,如果它是一个带字符串的简单数组,那么这会有所帮助:
b = ["Yes", "No", "Yes"]
a = [ 0 if x.lower() == "yes" else 1 for x in b]
答案 2 :(得分:0)
dat <- as.factor(c("yes", "no", "yes", "yes"))
as.numeric(dat) - 1