You need to enable JavaScript to run this app. R语言如何生成固定长度、固定和的随机二元向量
优惠活动
大模型
产品
解决方案
定价
更多

R语言如何生成固定长度、固定和的随机二元向量

R语言生成固定长度、总和固定的随机二元向量方案

核心逻辑

你需要的0-1二元向量总和固定为15,等价于长度为100的向量中恰好包含15个1、85个0,随机生成的本质是从100个位置中无放回随机抽取15个位置赋值为1,其余位置赋值为0。

具体实现代码

方法1:直接抽样赋值(最常用、精度100%)

# 初始化长度为100的全0向量
binary_vec <- rep(0, 100)
# 随机抽取15个不重复的位置,赋值为1
binary_vec[sample(x = 1:100, size = 15, replace = FALSE)] <- 1

结果验证

运行以下代码可确认生成结果符合要求:

  • 验证长度:length(binary_vec) 输出为 100
  • 验证总和:sum(binary_vec) 输出为 15

补充说明

  • 如果需要可复现的随机结果,可在生成代码前加一行 set.seed(自定义整数),比如 set.seed(2024),后续每次运行都会生成完全相同的向量。
  • 不要使用rbinom()函数实现该需求:二项分布生成的0-1向量总和是随机波动的,无法严格固定为15,仅适合总和允许波动的场景。

内容的提问来源于stack exchange,提问作者Chenying Gao

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 14:54:03