You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在R语言中如何从数字序列中抽样并跳过指定数值

R中使用sample()抽样时跳过指定数值的实现方法

你要实现跳过数值3从1~10中抽样的需求,只需要先构造剔除了3的候选抽样序列,再传入sample()函数即可,具体实现方式如下:

直接实现代码

对应你给出的需求示例,直接写法为:

sample(x = (1:10)[1:10 != 3], size = 5, replace = TRUE)

代码说明

  • (1:10)[1:10 != 3]:从1~10的整数序列中筛选所有不等于3的元素,得到的候选集为c(1,2,4,5,6,7,8,9,10)
  • 后续的size、replace参数和原生sample()的用法完全一致,不需要调整

通用扩展写法

如果你后续需要跳过多个数值,或者需要频繁调整跳过的数值,可以用更灵活的写法:

# 定义要跳过的数值,可自行修改
skip_values <- c(3)
# 定义原始抽样范围
candidate_range <- 1:10
# 抽样
sample(x = candidate_range[!candidate_range %in% skip_values], size = 5, replace = TRUE)

示例运行结果

某次运行的输出如下,不会出现3:
[1] 2 7 10 4 1


内容的提问来源于stack exchange,提问作者Jason Chia Kim Leng

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 00:36:04