【问题标题】:How to split and dataset into train and test and merge their corresponding "class" in R如何将数据集拆分为训练和测试并在 R 中合并它们相应的“类”
【发布时间】:2018-08-18 22:06:21
【问题描述】:

我使用的是 wisconsin 数据集,它有两个分类列 IDsclass。为了进行分类,我必须从数据框中删除这两列,然后将数据集拆分为训练和测试(80%:20%)。我已经完成了,但现在我想将相应的类合并到拆分数据集。 然后我必须将拆分的类放入一个新的向量中。

示例:

data <- read.csv("data.csv")
data <-data[,-1] #drop IDs
data <-data[,-10] #drop class
X <-data.frame((scale(data)))
dt = sort(sample(nrow(X), nrow(X)*8))
training <-X[dt,]
test<-X[-dt,]

从这里我需要合并样本对应的类。

【问题讨论】:

  • 欢迎堆栈溢出!这里有一个关于如何使用可重复的示例提出问题的很好的参考:stackoverflow.com/questions/5963269/… 如果你能提供一个,它可能会帮助其他人帮助你。
  • 您正在删除课程和 ID。应该使用哪些信息将值从trainingtest 匹配回data
  • 我将使用类值将它们链接回数据。我必须将与拆分数据对应的类放入向量中。这是我遇到的问题,因为我还必须缩放我的数据,这会改变班级编号。

标签: r classification knn train-test-split


【解决方案1】:

我会这样做:

# read data
data <- read.csv("data.csv")

# split the data
X <-data.frame((scale(data[,-c(1,10)])))
dt = sort(sample(nrow(X), nrow(X)*8))
training <-X[dt,]
test<-X[-dt,]

# add columns
training <- cbind(training, data[dt, c(1,10)])
test <- cbind(test, data[-dt, c(1, 10)])

【讨论】:

    猜你喜欢
    • 2018-10-13
    • 1970-01-01
    • 2019-05-01
    • 2018-04-22
    • 2015-09-15
    • 2020-08-22
    • 2016-07-04
    • 2021-05-09
    • 1970-01-01
    相关资源
    最近更新 更多