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

能否使用seq()函数生成步长随索引递增的指定范围向量?

解答

首先给出结论:不能直接用seq()实现你的需求。因为seq()的by参数只能是固定的单个值(或长度为1的向量),没办法让步长随每一步动态递增。

实现目标序列的方法

你的目标序列逻辑是:初始值为13,之后每个元素 = 前一个元素 + 前一个元素的索引(从1开始计数)。换个角度看,这个序列可以通过初始值加上累积递增的步长来生成,具体代码如下:

# 生成符合要求的向量
target_vec <- 13 + cumsum(c(0, 1:11))
# 打印验证结果
cat(target_vec, sep = ", ")

运行这段代码会输出你预期的结果:13, 14, 16, 19, 23, 28, 34, 41, 49, 58, 68, 79

如果需要更灵活地控制终止值(比如确保最后一个元素不超过79),也可以用循环逐步生成,但上面的累积求和方式是最简洁高效的。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 03:30:46