ngrams的顺序不正确
我有兴趣查找字符串的ngrams的顺序不正确,r,string,n-gram,R,String,N Gram,我有兴趣查找字符串的ngrams。我使用ngramR包来获取ngram。我用下面的句子来完成我的工作 library(ngram) ng <- ngram(x,n=2) ngrams_out = get.ngrams(ng) ngrams_final <- gsub(" ", "",ngrams_out , fixed = TRUE) # "CG" "TG" "AT" "GC" "CC" "GT" ## ngrams 库(ngram) ng不知道ngramngram但是你
ngrams
。我使用ngram
R
包来获取ngram
。我用下面的句子来完成我的工作
library(ngram)
ng <- ngram(x,n=2)
ngrams_out = get.ngrams(ng)
ngrams_final <- gsub(" ", "",ngrams_out , fixed = TRUE)
# "CG" "TG" "AT" "GC" "CC" "GT" ## ngrams
库(ngram)
ng不知道ngramngram
但是你应该像这样产生输出
x= "A T G C C G C G T"
strsplit(gsub("(\\S)(?=\\s(\\S))|\\s+\\S$", "\\1\\2", x, perl=T), " ")[[1]]
# [1] "AT" "TG" "GC" "CC" "CG" "GC" "CG" "GT"
不知道ngram的相关信息,但您应该像这样生成输出
x= "A T G C C G C G T"
strsplit(gsub("(\\S)(?=\\s(\\S))|\\s+\\S$", "\\1\\2", x, perl=T), " ")[[1]]
# [1] "AT" "TG" "GC" "CC" "CG" "GC" "CG" "GT"
我们可以扫描字符串“x”以获得单个字符,然后将相邻元素粘贴在一起
v1 <- scan(text=x, what='')
paste0(v1[-length(v1)], v1[-1])
#[1] "AT" "TG" "GC" "CC" "CG" "GC" "CG" "GT"
v1我们可以扫描字符串“x”以获得单个字符,然后将相邻元素粘贴在一起
v1 <- scan(text=x, what='')
paste0(v1[-length(v1)], v1[-1])
#[1] "AT" "TG" "GC" "CC" "CG" "GC" "CG" "GT"
v1文本分析软件包quanteda具有强大的ngram生成器:
require(quanteda)
unlist(tokenize("A T G C C G C G T", ngrams = 2, concatenator = ""))
## [1] "AT" "TG" "GC" "CC" "CG" "GC" "CG" "GT"
在这里,我已将从tokenize()
返回的tokenizedText类对象(一种列表类型)转换为所需的简单向量。文本分析包quanteda具有强大的ngram生成器:
require(quanteda)
unlist(tokenize("A T G C C G C G T", ngrams = 2, concatenator = ""))
## [1] "AT" "TG" "GC" "CC" "CG" "GC" "CG" "GT"
这里,我已经将从tokenize()
返回的tokenizedText类对象(一种列表类型)转换为您想要的简单向量。关于x=“atgccgct”
如果我想要同时拥有三个或四个或更多的组合,比如ATG、TGC、GCC、CCG、CGC、CGT
或者ATGC、TGCC、GCG、ccgcg、CGCG,GCGT
x=“ATGCCGT”
如果我想同时拥有三个或四个或更多的组合,比如ATG、TGC、GCC、CCG、CGC、GCG、CGT
或者ATGC、TGCC、GCCG、CCGC、CGC、GCGT,那该怎么办呢。您的答案也适用于字符串,如x=“atgccgct”
@AaghazHussain您可以使用v1如果我不使用这一行,是否有任何副作用。@AaghazHussain的想法是将字符串拆分为单个字符。在第一种情况下,已经有一个分隔符,即空格。在这里,所有字符都连接在一起。假设您有x谢谢您的解释。谢谢。您的答案也适用于字符串,如x=“atgccgct”
@AaghazHussain您可以使用v1如果我不使用这一行,是否有任何副作用。@AaghazHussain的想法是将字符串拆分为单个字符。在第一种情况下,已经有一个分隔符,即空格。在这里,所有字符都连接在一起。假设您有x,谢谢您的解释。