所以這是一個很奇怪的問題,但我在R中有兩個向量:一個是ID的順序列表,另一個是我希望該ID出現在多少次新的矢量。在R中使用兩個向量來創建一個新的
例如:
ids: A B C D
times: 4 2 5 3
,我想用
new: A A A A B B C C C C C D D D
落得這是否有道理?
所以這是一個很奇怪的問題,但我在R中有兩個向量:一個是ID的順序列表,另一個是我希望該ID出現在多少次新的矢量。在R中使用兩個向量來創建一個新的
例如:
ids: A B C D
times: 4 2 5 3
,我想用
new: A A A A B B C C C C C D D D
落得這是否有道理?
使用rep
功能,如:
> rep(c('A', 'B', 'C', 'D'), times=c(4, 2, 5, 3))
[1] "A" "A" "A" "A" "B" "B" "C" "C" "C" "C" "C" "D" "D" "D"
使用rep()
> rep(LETTERS[1:4], times = c(4,2,5,3))
[1] "A" "A" "A" "A" "B" "B" "C" "C" "C" "C" "C" "D" "D" "D"
這當然是有道理的。
rep(c("A","B","C","D"),times=c(4,2,5,3))
[1] "A" "A" "A" "A" "B" "B" "C" "C" "C" "C" "C" "D" "D" "D"
和公正的興趣,該方法的反函數是'rle',這需要一個載體如A,A,A,A,B,B,C,C和吐出的值和數量重複。 – Spacedman 2013-02-23 08:44:41