r - 使用一个函数和一个参数生成两个序列

标签 r sequence seq rep

我想生成这两个序列:

A = c(0.25,0.50,0.75,1,0.25,0.50,0.75,0.25,0.50,0.25)
B = c(0.33,0.66,1,0.33,0.66,0.33)

只有一个功能。 我已经有了这个:

X = 5
X = 4
rep(seq(1/(X-1),1,1/(X-1)), X-1)

但是,我仍然需要删除一些值, 我是这样做的,但这并不是真正正确的方法:

rep(seq(1/(X-1),1,1/(X-1)), X-1)[-c(8,11,12,14,15,16)]
rep(seq(1/(X-1),1,1/(X-1)), X-1)[-c(6,8,9)]

有没有办法在一个函数中写这个?

最佳答案

一种方法是通过 sequence(x:1)/x,其中 x 取所需的值。

> f = function(x) sequence(x:1)/x
> f(4)
# [1] 0.25 0.50 0.75 1.00 0.25 0.50 0.75 0.25 0.50 0.25
> f(3)
# [1] 0.3333333 0.6666667 1.0000000 0.3333333 0.6666667 0.3333333

(假设 sequence 算作一个函数,即我们不包括 :/ 等)

关于r - 使用一个函数和一个参数生成两个序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65520459/

相关文章:

r - 将 R GUI 首选项保存为默认值

r - 在 R 传单中使用菱形、三角形和星形形状

r - 如何创建这个特殊序列?

Python递归调用不执行代码 - 3个序列的子序列的最长公共(public)

用于演示的 R 演示

r - 如何在启动时在 Windows Vista 上的 RStudio 中设置 memory.limit?

java 正则表达式 字符序列

javascript - 等待发出的消息的响应?

java - 表示工作流的类结构

scala - Scala 不可变索引序列是如何实现的,它们的操作复杂度如何?