r - 创建添加序列

标签 r sequence repeat

我想按照行号序列提取数据帧的特定行。

顺序应该是:

7, 14, 21, 31, 38, 45, 55, 62, 69.....until 8760. 

所以它总是从第 7 行开始,然后是 +7 +7 +10 并且应该重复这个直到结束。

我知道repseq,但我不知道如何处理+7之后的+10。 有什么想法吗?

最佳答案

尝试

x <- rep(c(7, 10), c(2, 1))
out <- cumsum(c(7, rep(x, ceiling(8760 / sum(x)))))

结果

head(out, 10)
# [1]  7 14 21 31 38 45 55 62 69 79

tail(out)
# [1] 8726 8733 8743 8750 8757 8767

如果您希望 out8760 结尾,您可以这样做

c(out[out < 8760], 8760)

关于r - 创建添加序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56022421/

相关文章:

r - 如何将 Tableau 计算字段中的每一行作为参数传递给 R 脚本

clojure - 如何在Clojure中制作一个无限的重复序列?

java - Hibernate 抛出托管刷新异常

python - 文本 Python 中的重复短语

Java:同时子类类及其子类(都超出了我的范围)

r - 如何使 qplot 用一个数据向量生成线图

r - For 循环 - 从日列中选择时间窗口

r - 使用 R 中的 dplyr 对来自数据帧的数据进行 2D 插值

java - 根据相关的 id 列表重新排序集合

Python - 重复给定函数 n 次