【发布时间】:2014-08-23 15:41:33
【问题描述】:
我想将矩阵的n 条目设置为零,下面是我通过生成唯一的整数对来解决这个问题的尝试。
如何从均匀分布(x,y) 中生成唯一的整数对,例如,如果我们想要三对 x 和 y 在 1:1000 范围内,那么解决方案之一是:
(1,888),(743,743),(743,4)
如果我使用cbind(sample(1:1000,100,replace=TRUE),sample(1:1000,100,replace=TRUE)) 生成100 对,我冒着风险,它们可能会重复几次。如何以矢量化方式制作(无循环)?
对不能重复,但它们的元素可以,例如: (1,2),(2,1),(1,1),(2,2),(23,23),(86,52) 是 1:100 范围和六对的正确输出
【问题讨论】:
-
澄清一下,您允许对重复,例如(1,2) (1,2),但不允许一对元素重复,例如(1,1), (2,2)?
-
@Randy Lai 不,我想要相反的
-
replace=TRUE是否表示您正在抽样更换?如果是这样,您可以在区间[1, 1000*1000]中随机选择而不替换,然后将它们转换为对。 -
哦,既然您使用的是
replace=TRUE。我以为你允许这对重复。 -
@Patrick87 抱歉,我误读了您的评论...