只有在向公式中添加误差矩阵时才会出现此错误: 称呼: C5.0.default(x = heart_train,y = heart_train_results,trials = 1,costs = error_cost)
由属性“结果”指定的类
从undefined.data中读取820个案例(14个属性)
***
undefined.costs': bad class
no'的第1行
超出错误限制
数据来自 https://www.kaggle.com/datasets/johnsmith88/heart-disease-dataset/code?datasetId=216167&language=R
它适用于
heart_classifier = C5.0(heart_train, heart_train_results, trials=1, costs=Null)
密码是
library(libcoin)
library(Cubist)
# Import packages
library(gmodels)
library(C50)
#install.packages("ggplot2")
library(ggplot2)
library(corrplot)
#install.packages("tidyverse")
library(tidyverse)
library(Amelia)
library(corrgram)
#install.packages('fastDummies')
library(fastDummies)
#Stage 1 exploration-----------------------------------
setwd("C:/R_homework")
getwd()
heart<-read.csv("heart.csv")
str(heart) #1025 obs. of 14 variables
#Stage 2 convert target to factor-----------------------------------
heart$target<-as.factor(heart$target)
#Create a train and test set
set.seed(2410)
length<-length(heart$target) #1025
1025*0.8 #820
train_obs = sample(1:length, size=length*0.8, replace=FALSE)
heart_train<-heart[train_obs, !(names(heart) %in% "target")]
heart_test<-heart[-train_obs, !(names(heart) %in% "target")]
length(heart_train$age) #820
length(heart_test$age) # 205
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# stage5
#-----------------------------------results/labels
heart_train_results<-heart[train_obs, "target"]
heart_test_results<-heart[-train_obs, "target"]
length(heart_train_results) #820 rows
length(heart_test_results) #205 rows
matrix_dimensions = list(c("no", "yes"), c("no", "yes"))
names(matrix_dimensions) = c("predicted", "actual")
matrix_dimensions
# matrix cost
# provide a penalty more to the chance to loose customer
error_cost = matrix(c(0, 1, 4, 0), nrow = 2, ncol=2, byrow=FALSE, dimnames = matrix_dimensions)
error_cost
#b
heart_classifier3 = C5.0(heart_train, heart_train_results, trials=1, costs=error_cost)
summary(heart_classifier3)