我是靠谱客的博主 淡定吐司,最近开发中收集的这篇文章主要介绍sample函数—R语言sample函数sample.int函数,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

简述:
Sample函数从x的元素中提取指定大小的样本,使用替换或不替换。

其使用格式为:

sample函数

sample(x, size, replace = FALSE, prob = NULL)

其中:

  • x:一个可供选择的一个或多个元素的向量,或一个正整数
  • n:一个正数,可供选择的项目数目。
  • size:一个非负整数,表示可供选择的项目数
  • replace:抽样应该替换吗
  • prob:用于获取被采样矢量的元素的概率权重向量。
    举例
x <- 1:12
sample(x)

在这里插入图片描述
从1-12随机抽取12个元素,相当于无放回抽样

sample(x,replace=T)

在这里插入图片描述
输出结果有重复值,相当于有放回抽样

y <- c(0,1) 
sample(y,100,replace=T)

这里的100就是抽取100个元素,因为我们这里是有放回的抽样,所以可以抽无数次
其他用法:

  • 带有条件的抽取
    比如抽取1到10中大于5的样本
sample(x[x >  5]) 

在这里插入图片描述
大于10的样本(很明显一个没有)

sample(x[x > 10])

输出整数0
在这里插入图片描述
但是注意!!!当你想输出大于9的样本的时候(很明显只有10)
R语言却输出了10个向量。这也是需要注意的一点

sample(x[x > 9])

在这里插入图片描述
如果你真的想从大于9的数中抽取的话,需要使用sample.int函数

resample <- function(x, ...) x[sample.int(length(x), ...)]
resample(x[x >  8]) # length 2
resample(x[x >  9]) # length 1
resample(x[x > 10]) # length 0

在这里插入图片描述
这样输出结果就正常了

sample.int函数

比如我想从1到1000间中随机抽取50个整数,有放回的抽样(可重复抽样)

sample.int(1e3, 100)

1e3代表1000,1en代表10的n次方
在这里插入图片描述

最后

以上就是淡定吐司为你收集整理的sample函数—R语言sample函数sample.int函数的全部内容,希望文章能够帮你解决sample函数—R语言sample函数sample.int函数所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部