r - 如何阅读R中的文本文档?

标签 r text-mining

我想根据以下条件阅读 R 中的文本文档 - 它会根据某些关键字读取句子,只要找到关键字和以句号 (.) 结尾的句子,就只将这些语句存储在列表中。

输出列表仅包含那些具有特定关键字的语句。

我试过这样的扫描功能-

b<-scan("cbt14-Short Stories For Children.txt",what = "char",sep = '.', nlines = 50)

因为扫描函数有这么多参数,我现在无法理解。

我们可以使用扫描功能实现上述输出吗???

关键字=“船”

输入--

这篇文章你可以从“www.google.com/ship”阅读。 由 Subir Roy 和 Geeta Verma 绘制插图 我站在 S.S. Rajula 的甲板上。当她慢慢驶出马德拉斯港时,我向祖 parent 挥手致意,直到再也看不见他们。我很高兴能登上一艘船。这对我来说是一种全新的体验。 “你一个人旅行吗?”站在我旁边的人问道。 “是的,叔叔,我要回新加坡见 parent 了。”我回答。 “你叫什么名字?”他问。 “Vasantha,”我回答道。我花了一天时间探索这艘船。它看起来就像一座大房子。有带家具的房间、一个游泳池、一个室内游戏室和一个图书馆。然而,周围有足够的空间容纳 11111。第二天早上,乘客们坐在餐厅里吃早餐。扩音器发出嘈杂的噼啪声,然后船长的声音响亮而清晰。 “ friend 们,我们刚刚收到一条信息,说印度洋正在酝酿一场 Storm 。我要求你们所有人保持冷静。不要 panic 。那些倾向于大海的人—— 3

输出列表--

[1]您可以从“www.google.com/ship”阅读这篇文章。

[2]我很高兴能登上一艘船。

[3] 我花了一天时间探索这艘船。

最佳答案

这个问题的困难部分是正确地分隔句子。在本例中,我使用句点后跟一个空格“.”来定义一个句子。在此示例中,它确实生成了一个包含单个词的句子 - “Rajula”,但这可能是可以接受的,具体取决于您的最终应用。

#split the text into sentences using a ". "
sentences<-strsplit(b, "\\. ")
#find the sentences with the word ship in the answer
finallist<-sentences[[1]][grepl("ship", sentences[[1]] )]

上面的代码使用 base R。查看 stringi 或 stringr 库,可能有一个函数可以更好地处理定义句子的字符串拆分。

关于r - 如何阅读R中的文本文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43645084/

相关文章:

r - 为什么使用 NGramTokenizer 时 R 会挂起?

python - 如何使用 Python 从网站上抓取文本

r - 如何合并两个大数据集,同时在 r 中生成具有不同重复值的新列

python - 如何设置 igraph 图的大小?

r - 如何根据节点所属的组动态为节点着色?

python - Hashingvectorizer 和多项式朴素贝叶斯不能一起工作

nlp - 字节 vs 字符 vs 单词 - n-gram 的粒度是什么?

从大文件中按数字读取行

r - 在使用公式用插入符号的 train() 训练的 randomForest 对象上使用 predict() 时出错

regex - R tm 在语料库中使用 gsub 替换单词