如何将每个观察值随机分配给两个标签之一
How to randomly assign each observation to one of two labels
我在 R 中有一个数据矩阵如下:
[,1] [,2]
[1,] 1 4
[2,] 1 3
[3,] 0 4
[4,] 5 1
[5,] 6 2
[6,] 4 0
现在我想将每个观察值随机分配给 1 或 0 集群。基本上我正在尝试做 Kmeans 并且在此之前我想将每个观察初始化到某个集群。
我想在 R 中使用 sample 函数。但我不确定 sample 会如何给出这个。样本函数是从集合中获取样本。
有人可以指导吗?
您可以通过以下方式使用样本生成0或1的随机序列:
sample(c(0,1), size = nrow(data), replace = TRUE)
要将此添加到您的矩阵中,您可以使用 cbind()
,所以也许像这样的东西可以满足您的要求:
data = matrix(data = 1:6, ncol = 2, nrow = 6)
newData = cbind(data, sample(c(0,1), size = nrow(data), replace = TRUE))
我在 R 中有一个数据矩阵如下:
[,1] [,2]
[1,] 1 4
[2,] 1 3
[3,] 0 4
[4,] 5 1
[5,] 6 2
[6,] 4 0
现在我想将每个观察值随机分配给 1 或 0 集群。基本上我正在尝试做 Kmeans 并且在此之前我想将每个观察初始化到某个集群。
我想在 R 中使用 sample 函数。但我不确定 sample 会如何给出这个。样本函数是从集合中获取样本。
有人可以指导吗?
您可以通过以下方式使用样本生成0或1的随机序列:
sample(c(0,1), size = nrow(data), replace = TRUE)
要将此添加到您的矩阵中,您可以使用 cbind()
,所以也许像这样的东西可以满足您的要求:
data = matrix(data = 1:6, ncol = 2, nrow = 6)
newData = cbind(data, sample(c(0,1), size = nrow(data), replace = TRUE))