数据的准备创建训练集和验证集

乳腺癌的数据准备函数

> par(ask=TRUE) #布局能够恢复
> loc <- "http://archive.ics.uci.edu/ml/machine-learning-databases/"
> ds  <- "breast-cancer-wisconsin/breast-cancer-wisconsin.data"
> url <- paste(loc, ds, sep="")
> breast <- read.table(url,sep = ",",header = F,na.strings = "?")   #sep=","间隔,na,strings="?":“?”的都用NA表示
> names(breast) <- c("ID", "clumpThickness", "sizeUniformity",      #names(brest)获取breast数据框的变量名组成的字符向量
+                    "shapeUniformity", "maginalAdhesion",          #将右边的变量字符向
+                    "singleEpithelialCellSize", "bareNuclei",      #量赋值给breast的变量
+                    "blandChromatin", "normalNucleoli", "mitosis", "class")

> df <- breast[-1] #剔除第一个变量(实际数据框中第一个变量名为ID,没有用因此剔除)
> df$class <- factor(breast$class,levels=c(2,4),labels=c("benign","malignant")) ##将class变量设置为因子


#-------设置训练集和验证集
> set.seed(1234)                           #set.seed()让随机抽样的结果可复制
> train <- sample(nrow(df),0.7*nrow(df))   #sample(x,size)从x总获取size大小的随机数,nrow(df)获取df的函数,0.7*(nronw)df或70%的
> df.train <- df[train,]                   #获取70%行的数据框数据做为训练集
> table(df.train$class)                    #使用N个类别型变量(因子)建立一个N维列联表并进行简单的频数统计

   benign malignant 
      329       160 
> df.validate <- df[-train,]              #剔除训练集剩下的就是验证集
> table(df.validate$class)

   benign malignant 
      129        81

(1 条消息)混淆矩阵是什么意思? - 知乎 布局

相关文章
相关标签/搜索