在R中复制和去重复字符串

时间:2018-10-10 15:17:27

标签: r string duplicates

我有以下字符串(实际上还有几百个)

101100    (Unique String 1)
101100
101100
101100
101100
111010    (Unique string 2)
101010    (Unique string 3)

前5个字符串相同,而后2个字符串不同。

在表中,看起来像

Unique String 1   Unique String 2   Unique String 3
      5                 1                 1

我的问题:在R中,有没有一种方法可以对最频繁的字符串进行重复数据删除(101100),并随机重复其他字符串,从而节省总字符串数?随机地说,我的意思是没有指定'each ='参数,例如?

新表可能看起来像

Unique String 1   Unique String 2   Unique String 3
      3                 2                 2

对应于字符串

101100    (Unique String 1)
101100
101100
111010    (Unique string 2)
111010
101010    (Unique string 3)
101010

1 个答案:

答案 0 :(得分:0)

我认为您只需要rep

v <- c(rep("101100", 5), "111010", "101010")

v_unique <- unique(v)

t1 <- table(v)
# reproduce original
rep(v_unique, t1)

# other frequencies
t2 <- c(3, 2, 2)
rep(v_unique, t2)
# "101100" "101100" "101100" "111010" "111010" "101010" "101010"