在R中,我需要创建一个向量b = (1, 1+pi, 1+2pi, 1+3pi,...,1+19pi)
。我不确定该怎么做。我一直在尝试使用seq
命令(即seq(1, 1+npi n = 1:19)
,这完全错了!),但不知道使其正常工作的正确语法,因此它永远不会。
任何帮助都将不胜感激。
答案 0 :(得分:2)
R需要乘法运算符。
b <- 1+ seq(0,19)*pi
在速度可能很重要的情况下稍快一点:
b <- 1+ seq.int(0,19)*pi
你可以使用等价物:
b <- 1+ 0:19*pi
因为&#34;:&#34;运算符具有非常高的优先级(请参阅?Syntax
),它是合理安全的。当你使用减号或加号来解析它作为二元运算符时,要小心你理解优先级(记住忽略空格并且unary-minus的优先级高于单冒号,但二进制减号或加号有优先级较低:
> 1: 5+5
[1] 6 7 8 9 10
答案 1 :(得分:1)
您应该只使用0:19 * pi + 1
。使用seq
并不是很好:seq(1, 1 + 19 * pi, by = pi)
或seq(1, 1 + 19 * pi, length = 20)
。