我有一个大矢量:
a<-1:1000
a<-sample(a,replace=F)
b<-sample(1:10,1)
我想随机删除&#39; b
&#39;来自a
的条目数。怎么办呢?
答案 0 :(得分:2)
a的长度无关紧要,让我们举个简短的例子:
> a=1:20
> a=sample(a,replace=FALSE)
> a
[1] 9 11 16 15 10 18 8 7 4 2 14 5 12 20 6 1 13 19 3 17
> b=sample(1:10,1)
> b
[1] 3
> a=a[-sample(1:length(a),b)]
> a
[1] 9 11 16 15 10 18 7 4 2 14 12 20 6 1 13 19 3
> length(a)
[1] 17
这里的技巧是从1:length(a)获取长度为b的样本,然后使用负索引到子集。
答案 1 :(得分:1)
如果您想将b
的{{1}}值设为a
,那么:
NA
如果您要从a[sample(1:length(a), b)] <- NA
中删除b
值,则:
a