如何从R中的现有矢量(字符)创建两个矢量?

时间:2013-11-15 18:33:45

标签: r

所以我刚开始使用R而且我不得不经常挣扎。 我有这个刺激名称的矢量,如:

1. abc1.jpg
2. abc2.jpg
3. bcd1.jpg
4. bcd2.jpg
5. cde1.jpg
6. cde2.jpg

现在第一个条目对应左边的图片,第二个条目对应右边的图片。我想创建两个名为“left”和“right”的向量,其中“left”向量由条目1,3,5,7,9 ...(直到300)组成,右侧始终为第二张相同的图片(2,4,6 ......)

我该怎么做? 提前谢谢!

2 个答案:

答案 0 :(得分:2)

vec <- 1:10 # an example vector with the numbers from 1 to 10

vec[c(TRUE, FALSE)]
# [1] 1 3 5 7 9

vec[c(FALSE, TRUE)]
# [1]  2  4  6  8 10

短索引向量(例如c(TRUE, FALSE))将被回收,直到其长度与向量vec的长度匹配。

答案 1 :(得分:1)

x <- c('a','b','c','d','e','f','g','h')

x.odd <- x[(1:length(x) %% 2)==1] ; x.odd
#[1] "a" "c" "e" "g"

x.even <- x[(1:length(x) %% 2)==0] ; x.even
#[1] "b" "d" "f" "h"