我正在尝试将column属性转换为:所有0都将变为No,所有1都将变为Yes。如何在R中做到这一点?
我正在尝试使用R studio和插入符号包来制作它。
library(mlbench)
library(caret)
data<-read.csv('diabetes.csv')
control<-trainControl(method="repeatedcv", number=10,repeats=3)
model<-train(data$Outcome~.,data=data,method="lvq",preProcess="scale",
trControl=control)
此处输出给出错误:错误:回归的模型类型错误。 这可能是因为“结果”列包含0,1。但是,如果它们是字符串,就可以工作:是,否。
答案 0 :(得分:2)
您可以使用库 forcats 和函数fct_recode()
来更改变量的级别:
library(dplyr)
library(forcats)
data <- data %>% mutate(Outcome = fct_recode(as.character(Outcome), 'Yes' = '1', 'No' = '0'))
答案 1 :(得分:1)
您可以使用更改数据类型
library(dplyr)
data <- data %>% mutate(Outcome2 = ifelse(Outcome == 1, TRUE, FALSE))
然后将Outcome2用于模型。