标签: text-mining

如何判断两个网页内容是否相似?

鉴于2种HTML源,我想先提取的主要内容进行使用类似它这样.还有其他更好的库 - 我是专门寻找Python/Javascript的吗?

一旦我有两个提取的内容,我想返回0到1之间的分数,表示它们有多相似,例如来自CNN和BBC的同一主题的新闻文章将具有更高的相似性分数,因为它们属于同一主题或与之相关的网页Amazon.com和Walmart.com上的同一产品也会获得高分.我怎样才能做到这一点?是否有现有的库已经这样做了?我可以使用哪些好的库?基本上我正在寻找自动摘要,关键字提取,命名实体识别情感分析的组合.

python nlp machine-learning text-mining semantic-analysis

3
推荐指数
1
解决办法
388
查看次数

数学的tm :: findAssocs这个函数是如何工作的?

我一直在使用findAssoc()textmining(tm包),但意识到我的数据集似乎不对.

我的数据集是保存在csv文件的一列中的1500个开放式答案.所以我像这样调用数据集,并使用典型的数据集tm_map使其成为语料库.

library(tm)
Q29 <- read.csv("favoritegame2.csv")
corpus <- Corpus(VectorSource(Q29$Q29))
corpus <- tm_map(corpus, tolower)
corpus <- tm_map(corpus, removePunctuation)
corpus <- tm_map(corpus, removeNumbers)
corpus<- tm_map(corpus, removeWords, stopwords("english"))
dtm<- DocumentTermMatrix(corpus)

findAssocs(dtm, "like", .2)
> cousin  fill  ....
  0.28    0.20      
Run Code Online (Sandbox Code Playgroud)

Q1.当我找到与之关联的术语时like,我没有看到输出like = 1作为输出的一部分.然而,

dtm.df <-as.data.frame(inspect(dtm))
Run Code Online (Sandbox Code Playgroud)

此数据框由1500个obs组成.1689变量..(或者是因为数据保存在一行csv文件中?)

Q2.尽管cousinfill出现了一次当目标项like出现了一次,比分是这样的不同.他们不应该一样吗?

我想找到数学findAssoc()但却没有成功.任何建议都非常感谢!

r text-mining

3
推荐指数
2
解决办法
8919
查看次数

在R中按大写解析文本

我有许多大文本文件,其基本组成如下:

text<-"this is a speech text. FIRST PERSON: hi all, thank you for coming. SECOND PERSON: thank you for inviting us"
Run Code Online (Sandbox Code Playgroud)

如您所见,它由以下内容组成:1)随机文本,2)大写字母,3)语音.

我已设法使用以下列表将所有单词分开:

textw<-unlist(strsplit(text," "))
Run Code Online (Sandbox Code Playgroud)

然后我找到大写单词的所有位置:

grep(pattern = "^[[:upper:]]*$",x = textw)
Run Code Online (Sandbox Code Playgroud)

我把人的名字分成了一个载体;

upperv<-textw[grep(pattern = "^[[:upper:]]*$",x = textw)]
Run Code Online (Sandbox Code Playgroud)

期望的结果将是这样的数据框架或表格:

Result<-data.frame(person=c(" ","FIRST PERSON","SECOND PERSON"),
         message=c("this is a speech test.","hi all, thank you for coming.","thank you for inviting us"))

Result
         person                       message
1                      this is a speech test.
2  FIRST PERSON hi all, thank you for coming.
3 SECOND PERSON     thank you for …
Run Code Online (Sandbox Code Playgroud)

text r text-mining uppercase

3
推荐指数
1
解决办法
168
查看次数

R语言文本摘要

我有一个很长的文本文件,使用R language我想用至少 10 到 20 行或小句子来总结文本。如何用 总结至少 10 行的文本R language

text r text-mining summarization

3
推荐指数
1
解决办法
9461
查看次数

在词性标注之前是否需要使用停用词过滤?

我是文本挖掘和 NLP 相关内容的新手。我正在开发一个小项目,试图从一些文档中提取信息。我基本上是做一个 pos 标记,然后使用分块器找出基于的模式标记的单词。在进行词性标记之前我需要使用停用词吗?使用停用词会影响我的词性标记器的准确性吗?

nlp text-mining pos-tagger

3
推荐指数
1
解决办法
3076
查看次数

将特定字符串添加到 R 数据框中的所有列名称的最佳方法是什么?

我正在尝试训练从文档术语矩阵转换为数据帧的数据。正面和负面评论有单独的字段,因此我想在列名称中添加一个字符串作为“标签”,以区分来自不同字段的相同单词 - 例如,单词 hello 可以同时出现在正面和负面评论字段中(因此,在我的数据框中表示为一列),因此在我的模型中,我想通过将列名称设为 Positive_hello 和 Negative_hello 来区分它们。

我正在寻找一种重命名列的方法,以便将特定字符串附加到数据框中的所有列。比如说,对于mtcars,我想将所有列重命名为以“_sample”结尾,这样列名就会变成mpg_samplecyl_sampledisp_sample等等,而原来是mpgcyl、 和disp

我正在考虑使用sapplyor lapply,但还没有任何进展。任何帮助将不胜感激。

nlp r text-mining dataframe

3
推荐指数
1
解决办法
8956
查看次数

使用 Gensim 提取短语时出错

我正在尝试使用 Gensim 中的短语获取句子中的二元组,如下所示。

from gensim.models import Phrases
from gensim.models.phrases import Phraser
documents = ["the mayor of new york was there", "machine learning can be useful sometimes","new york mayor was present"]

sentence_stream = [doc.split(" ") for doc in documents]
#print(sentence_stream)
bigram = Phrases(sentence_stream, min_count=1, threshold=2, delimiter=b' ')
bigram_phraser = Phraser(bigram)

for sent in sentence_stream:
    tokens_ = bigram_phraser[sent]
    print(tokens_)
Run Code Online (Sandbox Code Playgroud)

即使将“new”、“york”捕获为“new york”,它也不会捕获“machine”,将学习作为“机器学习”

但是,在Gensim 网站上显示示例中,他们能够将“机器”、“学习”等词捕获为“机器学习”。

请让我知道如何在上面的示例中将“机器学习”作为二元组

python data-mining text-mining gensim word2vec

3
推荐指数
1
解决办法
1293
查看次数

tm 包中的 DocumentTermMatrix 不返回所有单词

我正在使用 R 中的 tm-package 创建一个文档术语矩阵,但是我的语料库中的一些单词在这个过程中丢失了。

我将用一个例子来解释。假设我有这个小语料库

library(tm)
crps <- " more hours to my next class bout to go home and go night night"
crps <- VCorpus(VectorSource(crps))
Run Code Online (Sandbox Code Playgroud)

当我DocumentTermMatrix()从 tm-package 使用时,它将返回以下结果:

dm <- DocumentTermMatrix(crps)
dm_matrix <- as.matrix(dm)
dm_matrix
# Terms
# Docs and bout class home hours more next night
# 1   1    1     1    1     1    1    1     2
Run Code Online (Sandbox Code Playgroud)

然而,我想要的(和期望的)是:

# Docs and bout class home hours more next night my  go to
#  1   1    1     1 …
Run Code Online (Sandbox Code Playgroud)

r text-mining tm

3
推荐指数
1
解决办法
1310
查看次数

从 PDF 中提取文本会在 R 中返回奇怪的结果

我试图从一堆 PDF 中挖掘文本,但是当我pdf_textpdftools包中使用 R 将它们读入时,它产生的文本很奇怪,与 PDF 文件中的实际内容完全不同。Onedrive 链接:https ://1drv.ms/b/s!AlTtlgN0WIa3s2qeq4yrv9fUu-Z6 。这是我使用的示例代码:

library(pdftools)
pdf1 <- pdf_text("https://dl.dropboxusercontent.com/s/308gpdijvnw18mf/2018REQ118030709.pdf?dl=0")
pdf1   

     ## c("(’-*)&&$(&’-’’’’)*,&’$)’&/.\r\n     itiCHMON&\\     4Q\\a WN BQKPUWVL
     ##FQZOQVQI                                          )’(/ 7QZ[\\ 9ITN BMIT
     ##6[\\I\\M DI‘ 3QTT\r\n                    5Q^Q[QWV WN 4WTTMK\\QWV[\r\n                   
     ##FE 8_h -10+0\r\n                    HYSX]_^T’ L7 -.-1,(10+0                                                 
     ##3QTT >]UJMZ (/’*’.’0\r\n   IBKHHO F7L;HI ?D9                                                        
     ##@TMI[M ZMKWZL 3QTT >]UJMZ QV UMUW [MK\\QWV WN KPMKS\r\n   ,0+, L7BB;O H:\r\n  
     ##H?9>CED: L7 -.---(0/+1                                                         
     ##IVL QVKT]LM QV ITT WVTQVM JIVSQVO \\ZIV[IK\\QWV[\r\n                                
     ##@ZWXMZ\\a :VNWZUI\\QWV                                                          
     ##DI‘ :VNWZUI\\QWV\r\n     JQh OUQb5                                                          
     ##-+,3 J_dQ\\ 7TZecdUT …
Run Code Online (Sandbox Code Playgroud)

pdf r text-mining

3
推荐指数
1
解决办法
1250
查看次数

NLP:有效比较和识别文本之间趋势的方法

是否有算法或方法可以评估文本项目之间的共同趋势/主题?

例如,假设有四个数据点(文本条目):

  • "我今天发现学校压力很大"
  • "物理测试非常简单."
  • "我的物理测试根本没有挑战性"
  • "每个人都提前离开,因为物理测试是直截了当的,我们很早就完成了."

基于这四个条目,第一个是异常值,与其余条目无关,但其他三个提到"物理测试"是如何容易的(更一般地,其他三个表达围绕"物理测试"的积极情绪).

有没有方法来提取相关句子之间的共同点?这些句子完全是开放式的,并不仅限于表达对某个对象的情绪 - 他们可能在谈论任何事情.

我知道这是一个相当广泛的问题,但我想我会问它,看看人们是否知道过去现有的解决方案或人们解决这个问题的方法.

nlp text-mining

2
推荐指数
1
解决办法
111
查看次数