我在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中使用样本函数。但我不确定样本会如何给出这个。样本函数是从集合中获取样本。
有人可以指导吗?
答案 0 :(得分:2)
您可以按以下方式使用样本生成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))