如何使用R语言的sample函数随机抽取若干个奇数或偶数?

Python018

如何使用R语言的sample函数随机抽取若干个奇数或偶数?,第1张

#1.如果总体是自然数这样的等差数列,可以直接利用seq函数挑出奇数(或偶数):n <- 1:100( ji <- seq(from=1,to=100,by=2) )( ou <- setdiff(n,ji) )rm(ji)rm(ou)#2.如果总体是杂乱无章的集合,可以写个小函数判断某个数的奇偶:jishu <- function(x){ifelse(x%%2 ==0,F,T)}( ji <- n[jishu(n)] )( ou <- n[!jishu(n)] )#通过上面的任一一种方法将总体的奇数偶数区分开,接下来就可以使用sample函数抽样了:sample(ji,5)

1000个苹果,每9个抽1个,抽30个,那也就用到9*30=270,跟1000有什么关系?

#假设apple原先是按顺序排的

>apple

[1] 1  2   3   4   ...

#首先将1000个苹果打乱顺序

>apple <- apple[sample(1000)] apple

[1]   528  376  9  231  ...

#然后写个循环

> count <- 0   # 这是最后抽出的样本数

> i <- 1   # 这是抽样范围的起点

> output <- vector() # 存储最后抽出来的样本

> while (count != 30){

+ temp <- sample(apple[i : (i + 8)] , 1)   # 在apple的第i到第i+8之间抽1个

+ output <- c(output, temp)  # 把结果存下来

+ i <- i + 9  # 重新设定起点

+ count <- count + 1  

}

运行完看output