R 将整齐的文本与同义词组合以创建数据框

R 将整齐的文本与同义词组合以创建数据框,r,tidytext,qdap,R,Tidytext,Qdap,我有如下示例数据框: quoteiD <- c("q1","q2","q3","q4", "q5") quote <- c("Unthinking respect for authority is the greatest enemy of truth.", "In the middle of difficulty lies opportunity.", "Intelligence is the ability to adapt to change.",

我有如下示例数据框:

 quoteiD <- c("q1","q2","q3","q4", "q5")
 quote <- c("Unthinking respect for authority is the greatest enemy of truth.",
      "In the middle of difficulty lies opportunity.",
      "Intelligence is the ability to adapt to change.",
      "Science is not only a disciple of reason but, also, one of romance and passion.", 
      "If I have seen further it is by standing on the shoulders of Giants.")

 library(dplyr)
  quotes <- tibble(quoteiD = quoteiD, quote= quote)
   quotes

将qdap同义词函数中的5个单词列表合并并用逗号分隔的优雅方式是什么?使用
tidyverse
解决方案可以实现这一点的一种方式是

 quoteiD <- c("q1","q2","q3","q4", "q5")
 quote <- c("Unthinking respect for authority is the greatest enemy of truth.",
      "In the middle of difficulty lies opportunity.",
      "Intelligence is the ability to adapt to change.",
      "Science is not only a disciple of reason but, also, one of romance and passion.", 
      "If I have seen further it is by standing on the shoulders of Giants.")

 library(dplyr)
  quotes <- tibble(quoteiD = quoteiD, quote= quote)
   quotes
库(plyr)
图书馆(dplyr)
#> 
#>正在附加包:“dplyr”
#>从“package:plyr”屏蔽以下对象:
#> 
#>排列、计数、描述、失效、标识、变异、重命名、总结,
#>总结
#>以下对象已从“package:stats”屏蔽:
#> 
#>滤波器,滞后
#>以下对象已从“package:base”屏蔽:
#> 
#>相交、setdiff、setequal、并集
图书馆(tidytext)
图书馆(qdap)
#>加载所需的包:qdapDictionaries
#>加载所需包:qdapRegex
#> 
#>附加程序包:“qdapRegex”
#>以下对象已从“package:dplyr”屏蔽:
#> 
#>说明
#>加载所需包:qdapTools
#> 
#>正在附加程序包:“qdapTools”
#>以下对象已从“package:dplyr”屏蔽:
#> 
#>身份证
#>以下对象已从“package:plyr”屏蔽:
#> 
#>身份证
#>装载所需包装:RColorBrewer
#> 
#>附加程序包:“qdap”
#>以下对象已从“package:dplyr”屏蔽:
#> 
#>     %>%
#>以下对象已从“package:base”屏蔽:
#> 
#>滤器
图书馆(tibble)
图书馆(tidyr)
#> 
#>附上包裹:“tidyr”
#>以下对象已从“package:qdap”屏蔽:
#> 
#>     %>%
引号#A tible:5 x 2
#>引述
#>                                                                  
#>1 q1.“\n\nEBODAC财团由以下合作伙伴组成:杨森(efpia~
#>2第2季度“世界展望”)移动健康软件开发和部署~
#>3第三季度智力是适应变化的能力。
#>科学是浪漫和激情的源泉。
#>5问题5如果我看得更远,那就是站在上面。
数据(停止字)
整洁的单词%
unnest_标记(单词、引号)%%>%
反连接(停止字)%>%
计数(字,排序=真)
#>连接,通过=“word”
整洁的语言
#>#A tibble:33 x 2
#>单词n
#>           
#>1财团2
#>2 ebodac 2
#>3能力1
#>4适应1
#>5更改1
#>6包括1
#>7部署1
#>8发展1
#>9 efpia 1
#>10格拉明1
#> # ... 还有23行
syns与以下内容不匹配:
#>联合体,ebodac,包括部署、efpia、格拉明、杨森、伦敦、lshtm、合作伙伴、设置、软件、热带
#> ========================
同步%>%
plyr::ldply(data.frame)%>%#将列表更改为数据帧(请参见https://stackoverflow.com/questions/4227223/r-list-to-data-frame)
重命名(“Word_DefNumber”=1,“Syn”=2)%>%#使用更直观的名称重命名列
分开(单词\定义编号,c(“单词”,“定义编号”),sep=“\\”)%>%\查找单词的单词部分和定义编号
按(单词)%>%#按单词分组,这样当我们选择行时,每个单词都会完成分组
切片(1:5)%>%#保留每个单词的前5行
摘要(同义词=粘贴(Syn,collapse=“,”)%>%#使用粘贴将同义词组合在一起,以逗号分隔
解组()#以便在以后使用数据时不会出现数据分组的意外效果
#>#A tibble:20 x 2
#>同义词
#>                                                                  
#>1能力熟练程度,才能,能力,能力
#>2适应、适应、调整、改变、应用
#>3改变、转换、多样化、波动、变质
#>4发展进步、进步、进化、扩张、增长
#>5健康状况、良好状态、健壮、健康、健壮
#>6卫生清洁、卫生、卫生措施、卫生
#>7智力、敏锐度、能力、脑力、头脑
#>8有限有界、检查、外切、受限、约束
#>9药物治疗,药物,药物,药物,秘方
#>10移动式、流动式、机车式、流动式、机动式
#>11激情、热情、渴望、情感、兴奋
#>12理性——理解、头脑、理解、智力、判断力
#>13资源能力、能力、聪明、独创性、主动性
#>14浪漫的风流韵事,爱情的风流韵事~
#>15学校学院、母校、学院、系、学科
#>16科学知识体系、知识分支、学科、艺术、科学~
#>17地位、地位、声望、评价、地位
#>18滑车装备、仪器、设备、装置、工具
#>19视力眼睛,视力,知觉,看见,视力
#>20世界地球,地球球体,地球,每个人,每个人
由(v0.2.1)于2019-04-05创建


请注意,
plyr
应在
dplyr

syns%%>%unlist()%%data.frame(stringsAsFactors=FALSE)%%>%rename(“Syn”=1)%%>%rownames\u to\u column(“Word\u DefNumber”)%%单独(Word\u DefNumber,c(“Word”,“DefNumber”),sep=“\.”%>%mutate(DefNumber=as.numeric(gsub(“DefNumber”),”,DefNumber))%%>%group_by(Word)%%>%slice(1:5)%%>%summary(同义词=粘贴(Syn,collapse=“,”)
@KerryJackson这很好用。非常感谢。请你解释一下它的作用好吗?“还是把它写下来作为答案,让我接受?”凯利·杰克逊我尝试了另一个数据集,其中quote变量如下,但没有成功<代码>引用老实说我不是
 library(qdap)
  syns <- synonyms(tidy_words$word)
word       n    synonyms
ability    1    adeptness, aptitude, capability, capacity, competence 
adapt      1    acclimatize, accommodate, adjust, alter, apply,
authority  1    ascendancy, charge, command, control, direction