【问题标题】:Generating 3D data with cube as a decision surface以立方体为决策面生成 3D 数据
【发布时间】:2021-07-27 22:14:39
【问题描述】:

我是使用 r 程序的新手。我的任务是使用 r 创建一个函数来模拟包含 500 个观察值和三个变量 x、y 和 z 的标准正态分布。 我将使用立方体作为决策面,根据观察结果是在立方体内还是在立方体外对它们进行分类。

下面是我的代码。我能够绘制 3D 数据,但我不确定如何将数据集分为两类。

library(scatterplot3d)
set.seed (1234)
nObs <- 500
x <- matrix (rnorm (1.25*nObs), ncol =2)
y <- matrix (rnorm (1.25*nObs), ncol =2)
z <- matrix (rnorm (1.25*nObs), ncol =2)


mSample <- function(nObs,x,y,z){
x1 <- rnorm(1,x)
x1[y==1,] <- x[y==1,] + 1
mSample <- as_tibble(rbind(mvnfast::rmvn(x,y = y1,z = z1), mvnfast::rmvn(x,y =  y1,z = z1)))
mSample[1:x1, 1.25] <- 0
mSample[(x1 + 1):(x1 + 1), 1.25] <- 1
mSample <- mSample[sample(nrow(mSample)), ]
colnames(mSample <- c("x", "y", "class"))
mSample
}

spl <- scatterplot3d(x,y,z)
spl <- scatterplot3d(x,y,z,pch=16,highlight.3d=TRUE)

【问题讨论】:

    标签: r neural-network


    【解决方案1】:

    我最近有一个类似的问题。基本上,要知道给定点是在立方体内部还是外部,首先需要知道立方体的长度。

    然后,简单地遍历所有点 (nObs) 并执行 if 语句

    if (x > -cubeLength ** x < cubeLength && y > -cubeLength ** y < cubeLength && z > -cubeLength ** z < cubeLength) {
    classify positive
    }
    else {
    classify negative
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-10
      相关资源
      最近更新 更多