查找R中一个数组中的单词在另一个数组中出现的次数?

查找R中一个数组中的单词在另一个数组中出现的次数?,r,nlp,cran,R,Nlp,Cran,嗨,我有两个长度为N的数组“topWords”(唯一单词)和长度小于N的数组“observedWords”(单词重复) 我想要一个长度为N的计数“countArray”数组,其中包含“topWords”中的N个单词在数组“observedWords”中出现的次数。在R中执行此操作的有效方法是什么?您可以使用表和匹配函数。请参见下面的示例代码。我不确定它们是否适合你 topWords <- c('A', 'B', 'C') observedWords <- c(rep('A', 5),

嗨,我有两个长度为N的数组“topWords”(唯一单词)和长度小于N的数组“observedWords”(单词重复)


我想要一个长度为N的计数“countArray”数组,其中包含“topWords”中的N个单词在数组“observedWords”中出现的次数。在R中执行此操作的有效方法是什么?

您可以使用表和匹配函数。请参见下面的示例代码。我不确定它们是否适合你

topWords <- c('A', 'B', 'C')
observedWords <- c(rep('A', 5), rep('B', 4))
count <- table(observedWords)
pos <- match(topWords, names(count))
fre <- as.numeric(count)[pos]

topWords您可以使用表和匹配函数。请参见下面的示例代码。我不确定它们是否适合你

topWords <- c('A', 'B', 'C')
observedWords <- c(rep('A', 5), rep('B', 4))
count <- table(observedWords)
pos <- match(topWords, names(count))
fre <- as.numeric(count)[pos]

topWords您可以使用表和匹配函数。请参见下面的示例代码。我不确定它们是否适合你

topWords <- c('A', 'B', 'C')
observedWords <- c(rep('A', 5), rep('B', 4))
count <- table(observedWords)
pos <- match(topWords, names(count))
fre <- as.numeric(count)[pos]

topWords您可以使用表和匹配函数。请参见下面的示例代码。我不确定它们是否适合你

topWords <- c('A', 'B', 'C')
observedWords <- c(rep('A', 5), rep('B', 4))
count <- table(observedWords)
pos <- match(topWords, names(count))
fre <- as.numeric(count)[pos]

topWords下面是一个使用
match
unique
的简单示例。然后在末尾执行
ifelse
,将
NA
值转换为
0

> topWords <- paste(LETTERS, letters, sep = "")
> topWords
##  [1] "Aa" "Bb" "Cc" "Dd" "Ee" "Ff" "Gg" "Hh" "Ii" "Jj" "Kk" "Ll" "Mm" "Nn" "Oo"
## [16] "Pp" "Qq" "Rr" "Ss" "Tt" "Uu" "Vv" "Ww" "Xx" "Yy" "Zz"
> observedWords <- c("Bb", rep("Mm", 2), rep("Pp", 3))
> observedWords
## [1] "Bb" "Mm" "Mm" "Pp" "Pp" "Pp"
> mm <- match(topWords, unique(observedWords))
> ifelse(is.na(mm), 0, mm)
## [1] 0 1 0 0 0 0 0 0 0 0 0 0 2 0 0 3 0 0 0 0 0 0 0 0 0 0
>热门词汇热门词汇
##[1]“Aa”“Bb”“Cc”“Dd”“Ee”“Ff”“Gg”“Hh”“Ii”“Jj”“Kk”“Ll”“Mm”“Nn”“Oo”
##[16]“Pp”“Qq”“Rr”“Ss”“Tt”“Uu”“Vv”“Ww”“Xx”“Yy”“Zz”
>观察词观察词
##[1]“Bb”“Mm”“Mm”“Pp”“Pp”“Pp”
>如果是,则为mm(即na(mm),0,mm)
## [1] 0 1 0 0 0 0 0 0 0 0 0 0 2 0 0 3 0 0 0 0 0 0 0 0 0 0

下面是一个使用
匹配
唯一
的简单示例。然后在末尾执行
ifelse
,将
NA
值转换为
0

> topWords <- paste(LETTERS, letters, sep = "")
> topWords
##  [1] "Aa" "Bb" "Cc" "Dd" "Ee" "Ff" "Gg" "Hh" "Ii" "Jj" "Kk" "Ll" "Mm" "Nn" "Oo"
## [16] "Pp" "Qq" "Rr" "Ss" "Tt" "Uu" "Vv" "Ww" "Xx" "Yy" "Zz"
> observedWords <- c("Bb", rep("Mm", 2), rep("Pp", 3))
> observedWords
## [1] "Bb" "Mm" "Mm" "Pp" "Pp" "Pp"
> mm <- match(topWords, unique(observedWords))
> ifelse(is.na(mm), 0, mm)
## [1] 0 1 0 0 0 0 0 0 0 0 0 0 2 0 0 3 0 0 0 0 0 0 0 0 0 0
>热门词汇热门词汇
##[1]“Aa”“Bb”“Cc”“Dd”“Ee”“Ff”“Gg”“Hh”“Ii”“Jj”“Kk”“Ll”“Mm”“Nn”“Oo”
##[16]“Pp”“Qq”“Rr”“Ss”“Tt”“Uu”“Vv”“Ww”“Xx”“Yy”“Zz”
>观察词观察词
##[1]“Bb”“Mm”“Mm”“Pp”“Pp”“Pp”
>如果是,则为mm(即na(mm),0,mm)
## [1] 0 1 0 0 0 0 0 0 0 0 0 0 2 0 0 3 0 0 0 0 0 0 0 0 0 0

下面是一个使用
匹配
唯一
的简单示例。然后在末尾执行
ifelse
,将
NA
值转换为
0

> topWords <- paste(LETTERS, letters, sep = "")
> topWords
##  [1] "Aa" "Bb" "Cc" "Dd" "Ee" "Ff" "Gg" "Hh" "Ii" "Jj" "Kk" "Ll" "Mm" "Nn" "Oo"
## [16] "Pp" "Qq" "Rr" "Ss" "Tt" "Uu" "Vv" "Ww" "Xx" "Yy" "Zz"
> observedWords <- c("Bb", rep("Mm", 2), rep("Pp", 3))
> observedWords
## [1] "Bb" "Mm" "Mm" "Pp" "Pp" "Pp"
> mm <- match(topWords, unique(observedWords))
> ifelse(is.na(mm), 0, mm)
## [1] 0 1 0 0 0 0 0 0 0 0 0 0 2 0 0 3 0 0 0 0 0 0 0 0 0 0
>热门词汇热门词汇
##[1]“Aa”“Bb”“Cc”“Dd”“Ee”“Ff”“Gg”“Hh”“Ii”“Jj”“Kk”“Ll”“Mm”“Nn”“Oo”
##[16]“Pp”“Qq”“Rr”“Ss”“Tt”“Uu”“Vv”“Ww”“Xx”“Yy”“Zz”
>观察词观察词
##[1]“Bb”“Mm”“Mm”“Pp”“Pp”“Pp”
>如果是,则为mm(即na(mm),0,mm)
## [1] 0 1 0 0 0 0 0 0 0 0 0 0 2 0 0 3 0 0 0 0 0 0 0 0 0 0

下面是一个使用
匹配
唯一
的简单示例。然后在末尾执行
ifelse
,将
NA
值转换为
0

> topWords <- paste(LETTERS, letters, sep = "")
> topWords
##  [1] "Aa" "Bb" "Cc" "Dd" "Ee" "Ff" "Gg" "Hh" "Ii" "Jj" "Kk" "Ll" "Mm" "Nn" "Oo"
## [16] "Pp" "Qq" "Rr" "Ss" "Tt" "Uu" "Vv" "Ww" "Xx" "Yy" "Zz"
> observedWords <- c("Bb", rep("Mm", 2), rep("Pp", 3))
> observedWords
## [1] "Bb" "Mm" "Mm" "Pp" "Pp" "Pp"
> mm <- match(topWords, unique(observedWords))
> ifelse(is.na(mm), 0, mm)
## [1] 0 1 0 0 0 0 0 0 0 0 0 0 2 0 0 3 0 0 0 0 0 0 0 0 0 0
>热门词汇热门词汇
##[1]“Aa”“Bb”“Cc”“Dd”“Ee”“Ff”“Gg”“Hh”“Ii”“Jj”“Kk”“Ll”“Mm”“Nn”“Oo”
##[16]“Pp”“Qq”“Rr”“Ss”“Tt”“Uu”“Vv”“Ww”“Xx”“Yy”“Zz”
>观察词观察词
##[1]“Bb”“Mm”“Mm”“Pp”“Pp”“Pp”
>如果是,则为mm(即na(mm),0,mm)
## [1] 0 1 0 0 0 0 0 0 0 0 0 0 2 0 0 3 0 0 0 0 0 0 0 0 0 0

使用RScriv的示例:

topWords <- paste(LETTERS, letters, sep = "")
observedWords <- c("Bb", rep("Mm", 2), rep("Pp", 3))

library(qdap)
termco(observedWords, match.list=topWords)

##   all word.count Aa        Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll        Mm Nn Oo        Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz
## 1 all          6  0 1(16.67%)  0  0  0  0  0  0  0  0  0  0 2(33.33%)  0  0 3(50.00%)  0  0  0  0  0  0  0  0  0  0

以RScriv为例:

topWords <- paste(LETTERS, letters, sep = "")
observedWords <- c("Bb", rep("Mm", 2), rep("Pp", 3))

library(qdap)
termco(observedWords, match.list=topWords)

##   all word.count Aa        Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll        Mm Nn Oo        Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz
## 1 all          6  0 1(16.67%)  0  0  0  0  0  0  0  0  0  0 2(33.33%)  0  0 3(50.00%)  0  0  0  0  0  0  0  0  0  0

以RScriv为例:

topWords <- paste(LETTERS, letters, sep = "")
observedWords <- c("Bb", rep("Mm", 2), rep("Pp", 3))

library(qdap)
termco(observedWords, match.list=topWords)

##   all word.count Aa        Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll        Mm Nn Oo        Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz
## 1 all          6  0 1(16.67%)  0  0  0  0  0  0  0  0  0  0 2(33.33%)  0  0 3(50.00%)  0  0  0  0  0  0  0  0  0  0

以RScriv为例:

topWords <- paste(LETTERS, letters, sep = "")
observedWords <- c("Bb", rep("Mm", 2), rep("Pp", 3))

library(qdap)
termco(observedWords, match.list=topWords)

##   all word.count Aa        Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll        Mm Nn Oo        Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz
## 1 all          6  0 1(16.67%)  0  0  0  0  0  0  0  0  0  0 2(33.33%)  0  0 3(50.00%)  0  0  0  0  0  0  0  0  0  0
你看过包裹了吗?而且,如果你不想使用软件包,有很多方法。是其中之一。你看过包裹了吗?而且,如果你不想使用软件包,有很多方法。是其中之一。你看过包裹了吗?而且,如果你不想使用软件包,有很多方法。是其中之一。你看过包裹了吗?而且,如果你不想使用软件包,有很多方法。是其中之一。