【发布时间】:2018-03-19 14:34:09
【问题描述】:
如何在 R 中创建这种数组?
iii <- seq(from = 1, to = 49, by = 2)
这只会创造价值:
1 3 5 .. 49
我需要创建的数组:
1, 0, 3, 0, 5, 0, 7, . . . , 0, 49
【问题讨论】:
如何在 R 中创建这种数组?
iii <- seq(from = 1, to = 49, by = 2)
这只会创造价值:
1 3 5 .. 49
我需要创建的数组:
1, 0, 3, 0, 5, 0, 7, . . . , 0, 49
【问题讨论】:
使用:
x <- 1:11
x * (x %% 2)
给予:
[1] 1 0 3 0 5 0 7 0 9 0 11
这是做什么的:
x %% 2 为x 的奇数值创建一个向量,为x 的偶数值创建一个零。x 与x %% 2 相乘,从而得到一个具有不均匀值且中间有零的向量。根据@lmo 的建议,你也可以这样做:
x <- seq(1, 11, 2)
head(rep(x, each = 2) * (1:0), -1)
这将给出相同的结果。
【讨论】: