【发布时间】:2017-11-08 08:16:30
【问题描述】:
目前我已经注册了一门 R 课程,其中一个练习是构建一个 R 程序来计算字符串中的单词。我们不能使用函数table,但必须使用常规方法返回字符串中最流行单词的输出。
即狐狸跳过锥体并且...
所以程序必须返回“the”,因为它是最流行的短语。
到目前为止,我有以下内容:
string_read<- function(phrase) {
phrase <- strsplit(phrase, " ")[[1]]
for (i in 1:length(phrase)){
phrase.freq <- ....
#if Word already exists then increase counter by 1
}
我遇到了障碍,因为我不确定如何增加特定单词的计数器。谁能给我一个正确方向的指针?我的伪代码类似于:“对于循环的每个单词,将 wordIndex 增加 1。如果之前已经出现过单词,则增加 wordIndex 计数器。”
【问题讨论】:
-
我知道有人问过类似的变体,但他们倾向于使用教学顾问排除的桌子、图书馆等。
-
你了解 R 中的
list数据结构了吗?我认为它可以很好地存储每个单词的计数。 -
我们非常简要地介绍了它 - 但是我很高兴更深入地研究列表!我们在我相信的矩阵结构旁边介绍了这一点。
-
好的,如果你记得你可以使用字符串设置和检索列表值,我想你会有一个好的开始,比如
count_list[["fox"]] = 0; count_list[["fox"]] = count_list[["fox"]] + 1; -
我明白了!但唯一的问题是一个包含 X 多个元素的短语,我不能为每个排列创建一个列表,因为它不会是可扩展的?如有误解请见谅。
标签: r