假设我得到了string_a <- c('1', '3', '4', '9' ,'8')
并且我使用string_a
函数从sample()
中随机选择了两个元素。假设我得到了3
和8
。
我的问题是,如何在3
中获取8
和string_a
的索引(位置)并以此形式表示:01001
,其中1代表随机选择的数字的索引和0表示未选择的索引。
更多例子:
如果随机选择1
和3
,二进制表示将为11000
如果随机选择9
和8
,二进制表示将为00011
依旧......
答案 0 :(得分:3)
我们可以使用%in%
获取逻辑向量,然后使用as.integer
强制转换为二进制文件,将其粘贴在一起
paste(as.integer(string_a %in% sample(string_a, 2)), collapse="")
#[1] "01010"
答案 1 :(得分:2)
# assume x to be
x = c('3','9')
paste0(as.numeric(match(string_a, x,nomatch = 0)>0), collapse = "")