R编号从1到100

时间:2012-07-12 14:41:56

标签: r

  

可能重复:
  How to generate a vector containing a numeric sequence?

在R中,如何获得1到100之间的数字列表?其他语言有一个功能'范围'来做到这一点。 R的范围完全不同。

> range(1,100)
[1]   1 100

2 个答案:

答案 0 :(得分:86)

您的错误是寻找range,它会为您提供向量的range,例如:

range(c(10, -5, 100))

给出

 -5 100

相反,请查看:运算符以提供序列(步长为1):

1:100

或者您可以使用seq函数进行更多控制。例如,

##Step size of 2
seq(1, 100, by=2)

##length.out: desired length of the sequence
seq(1, 100, length.out=5)

答案 1 :(得分:3)

如果您需要使用构造作为快速示例,请使用:operator。

但是如果要动态创建矢量/数字范围,请改用seq()。

假设您正在使用a:b创建a到b的向量/数字范围,并且您希望它是一个增加的系列。然后,如果b被评估为小于a,你将得到一个递减的序列,但你永远不会得到通知,你的程序将继续以错误的输入执行。

在这种情况下,如果使用seq(),则可以设置 by 参数的符号以匹配序列的方向,如果它们不匹配,则会引发错误。例如,

seq(a, b, -1)

将引发a = 2,b = 6的错误,因为编码器预期序列会减少。