我有一个大型数据库的简历(CV),并有一定的表的技巧把所有用户的技能.
在该表中,有一个字段skill_text,用于描述全文技能.
我正在寻找一种算法/软件/方法来从该表中提取重要的术语/短语,以便构建一个具有标准化技能的新表.
以下是从DB中提取的一些示例技能:
输出应该是这样的:
如你所见,只有技能仍然没有其他表示文字.
我知道这可以使用文本挖掘技术,但如何做到这一点?数据库真的很大..这是一件好事,因为我们可以计算文本频率并决定它是真正的技能还是只是无意义的文本......最大的问题是......如何确定"blablabla"是一种技能?
编辑:请不要告诉我使用标准的东西,如文本tokinzer,或正则表达式..因为用户以非常随意的方式输入技能!!
谢谢
我正在开展一个项目,我有七个"帖子".这些帖子只是关于这个主题的一两句话.我需要做的是开发一种算法,查看帖子并识别某些趋势.例如,"A很好,但会导致B." 我需要开发一种算法来识别A和B之间的联系.
但是,正如您可以从我的子标准说明中所知,我不知道如何解决这个问题.任何人都能指出我正确的方向吗?我查看了数据挖掘,但我不确定这是否是我需要的.
我正在尝试使用R语言对类似文档进行聚类.作为第一步,我为我的文档集计算术语 - 文档矩阵.然后我为先前创建的术语 - 文档矩阵创建潜在的语义空间.我决定在我的实验中使用LSA,因为使用term-document矩阵进行聚类的结果非常糟糕.是否可以使用创建的LSA空间构建相异矩阵(使用余弦度量)?我需要这样做,因为我使用的聚类算法需要一个相异矩阵作为输入.
这是我的代码:
require(cluster);
require (lsa);
myMatrix = textmatrix("/home/user/DocmentsDirectory");
myLSAspace = lsa(myMatrix, dims=dimcalc_share());
Run Code Online (Sandbox Code Playgroud)
我需要从LSA空间构建一个相异矩阵(使用余弦测量),所以我可以调用聚类算法如下:
clusters = pam(dissimilartiyMatrix,10,diss=TRUE);
Run Code Online (Sandbox Code Playgroud)
有什么建议?
提前致谢!
我有一个4列的数据框.第1列由ID组成,第2列由文本组成(每个约100个单词),第3列和第4列包含标签.
现在,我想从文本列中检索单词频率(最常用的单词),并将这些频率作为额外的列添加到数据框中.我希望列名称是单词本身以及文本中填充其频率(从0到...每个文本)的列.
我尝试了tm包的一些功能,但直到现在还不尽如人意.有谁知道如何处理这个问题或从哪里开始?有没有可以完成这项工作的包裹?
id texts label1 label2
Run Code Online (Sandbox Code Playgroud) 我试图计算标点符号出现在小说中的次数.例如,我想找到问号和句号的出现以及所有其他非字母数字字符.然后我想将它们插入到csv文件中.我不知道怎么做正则表达式因为我没有那么多的python经验.有人可以帮我吗?
texts=string.punctuation
counts=dict(Counter(w.lower() for w in re.findall(r"\w+", open(cwd+"/"+book).read())))
writer = csv.writer(open("author.csv", 'a'))
writer.writerow([counts.get(fieldname,0) for fieldname in texts])
Run Code Online (Sandbox Code Playgroud) 我正在尝试打开一个巨大的文本文件(1 GB)并执行一些文本挖掘.
我愿意进行一些正则表达式搜索.
当我使用read()函数时,我收到错误:
File "C:\Python33\lib\encodings\latin_1.py", line 26, in decode
return codecs.latin_1_decode(input,self.errors)[0]
MemoryError
Run Code Online (Sandbox Code Playgroud)
我的代码是:
dataFile = open('data/AllData_2000001_3000000.txt', 'r', encoding="latin-1")
print(dataFile.read())
Run Code Online (Sandbox Code Playgroud)
为了执行正则表达式搜索,打开文本的最佳方法是什么?
谢谢!
我在R上进行文本挖掘任务,我有一个包含一些html文档的语料库.我想删除<style>它们之间的标签和所有文本,最好使用gsub函数.
例:
转过来:
<style>
.s4-tn{
border-left: 1px #0071C5 solid;
padding: 0px;
margin: 0px;
font-family: "Intel Clear", Verdana, verdana, san-serif;
font-size: 15px;
font-weight: lighter;
color: #0071C5; }
.s4-toplinks .s4-tn a.selected:hover{
color:#1F497D;
text-decoration: none;
}
</style>
<img id="corner" src="/sites/HR_ETM/SitePages/img/bottom_bar.png"/>
Run Code Online (Sandbox Code Playgroud)
对此:
<img id="corner" src="/sites/HR_ETM/SitePages/img/bottom_bar.png"/>
Run Code Online (Sandbox Code Playgroud) 我有输入:
callme
senditnow
runningcar
Run Code Online (Sandbox Code Playgroud)
我怎么能提取像叫我,现在发送,跑车这样的词.在python中有任何库使用一些字典来做那件事.
我正在尝试找到使用AI和机器学习方法比较两个文本文档的最佳方法.我已经使用了TF-IDF-Cosine相似度和其他相似性度量,但是这比较了单词(或n-gram)级别的文档.
我正在寻找一种方法,可以让我比较文件的含义.最好的方法是什么?
所以我尝试使用tidytext包来做bigrams主题建模,按照tidytext网站上的步骤操作:https://www.tidytextmining.com/ngrams.html .
我能够进入"word_counts"部分,其中R计算每个bi-gram的频率.
"word_counts"返回以下内容:
customer_id word n
<chr> <chr> <int>
1 00000001234 sample text 45
2 00000002345 good morning 30
3 00000003456 happy friday 24
Run Code Online (Sandbox Code Playgroud)
下一步是将上面的信息放入dtm格式
我的代码如下:
lda_dtm <- word_counts %>%
cast_dtm(customer_id, word, n)
Run Code Online (Sandbox Code Playgroud)
提出了一条警告信息:
Warning message:
Trying to compute distinct() for variables not found in the data:
- `row_col`, `column_col`
This is an error, but only a warning is raised for compatibility reasons.
The operation will return the input unchanged.
Run Code Online (Sandbox Code Playgroud)
但是"lda_dtm"看起来像是正确的格式.
lda_dtm
<<DocumentTermMatrix (documents: 9517, terms: 341545)>> …Run Code Online (Sandbox Code Playgroud) text-mining ×10
r ×4
python ×3
algorithm ×2
data-mining ×2
nlp ×2
regex ×2
database ×1
gsub ×1
lsa ×1
n-gram ×1
nltk ×1
tidytext ×1
tm ×1
trigonometry ×1