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

R语言如何创建0到9各重复30次的指定顺序向量

R 生成指定顺序规则向量的方案

需求是生成总长度300的向量,按顺序排列:30个0、30个1……一直到30个9。

原代码的问题

你写的初始循环版本有三个核心错误:

  • R 语言里append()不会直接修改原向量,必须把函数返回值重新赋值给原变量,否则追加操作不会保存
  • 循环范围写错了:你需要遍历的目标数值是0到9,不是0到30
  • for 循环会自动按给定序列更新迭代变量,不需要在循环体内手动给i做自增操作

修正后的循环写法

如果要保留逐次追加的循环逻辑,可以参考下面的代码:

labels <- c()
for (current_num in 0:9) {
  labels <- append(labels, rep(current_num, 30))
}

推荐的R原生高效写法

R 本身内置的向量化函数不需要写显式循环,一行代码就能实现,运行效率远高于手动循环:

labels <- rep(0:9, each = 30)

写完可以用table(labels)做校验,返回结果会显示0-9每个值都恰好出现30次,顺序完全符合要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 00:09:32