问题标签 [tidytext]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - R:与使用 tidytext::unnest_tokens 聚合相反。多变量和大写
跟进这个问题,我想执行与aggregate
(或data.table
下面的 MWE 中的等价物)相反的任务,以便我再次获得df1,从df2开始。
然后这里的任务是从df2复制df1。为此,我尝试了,但是当必须“分解”多个变量(模型、国家和年份)时,我无法弄清楚如何使其正常工作。tidytext::unnest_tokens
最好保留变量的原始大写字母。
任何与 不同的优雅解决方案tidytext::unnest_tokens
都将被接受!谢谢!
这是MWE:
r - R unnest_tokens 并计算每个令牌的位置(开始和结束位置)
使用unnest_tokens后如何获取所有token的位置?这是一个简单的例子 -
使用 tidytext 按空格进行标记 -
如何获取所有代币的位置?
r - R正则表达式使用tidytext和tm搜索法律引用
我使用tidytext
,tm
和quanteda
进行文本挖掘。
我试着:
tibble
根据法律引文的存在,用经过处理的纯文本过滤 a- 计算每个文本文档的相同引用次数
不幸的是,我不擅长使用特定的正则表达式。
这是一段显示典型的法律引用的段落:
4.1。Die selbstständige Tätigkeit als Arzt oder Ärztin bedarf einer Bewilligung des Kantons, auf dessen Gebiet sie ausgeübt wird (Art. 34 MedBG)。Die Bewilligung wird erteilt, wenn die gesuchstellende Person ein entsprechendes eidgenössisches Diplom besitzt (Art. 36 Abs. 1 lit. a MedBG) und vertrauenswürdig ist sowie physisch und psychisch Gewähr für eine einwandfreie Berufsausübung bietlitt (Art. 36 Abs. b 1 1 MedBG) )。Die Bewilligung wird entzogen, wenn ihre Voraussetzungen nicht mehr erfüllt sind oder nachträglich Tatsachen festgestellt werden, auf Grund derer sie hätte verweigert werden müssen (Art. 36 MedBG)。
瑞士法律的一般结构如下(https://www.admin.ch/opc/de/classified-compilation/20040265/index.html):
- 文章(Art. x,而 x 是一个数字)
- 段落(绝对 x,而 x 是一个数字)
- 字母(lit. x,而 xia 小写字母)
- 根据法典的不同,可能会出现更多子标题,例如“Satz 2”,
- 法典(混合大小写字母)
此外,2-4 不是强制性的,也可以组合,例如:
艺术 34. MedBG
艺术。42 腹肌。2 和 100 绝对值。1个医学BG
即使很难有一个正则表达式来指定给定条款和法典的每个子结构,(有数百个,其中许多在 2. - 4 中有微小差异)......如果你有知道如何自动执行此操作,请告诉我;D)我只对《法律条文》和《法典》感兴趣(在这种情况下为第 1-67 条和 MedBG)
我的方法
我通过删除高大的字母和标点符号来清理文本,并使用tolower
andtm::removePunctuation
回到整洁的数据tidytext::tidy()
我想念的东西: 我想到了一个搜索 1(文章)并跳过表达式从 2-4 直到它达到 5(法典)的正则表达式。
艺术 1.(识别 2-4 中不必要项目的代码(例如 abs. 1 100){0,直到达到 medbg}medbg
如果无法在特定点停止它,它可以在跳过大约 8 个项目后停止(这是我在 1. 和 5 之间期望的最大值。)
grepl("REGEX",lawCitation)
为art. 1
并且medbg
应该返回TRUE FALSE TRUE FALSE FALSE FALSE
如果我有一个好的正则表达式,我会这样继续:
或者我会尝试编写一个函数来搜索我tibble
的 medbg 的所有文章(第 1-67 条)并计算它们。
r - 没有适用于“字符”类对象的“unnest_tokens_”方法(tidytext 错误)
我在将数据框转换为与tidytext
函数一起使用时遇到了一些问题unnest_tokens
错误是:error in UseMethod("unnest_tokens_") : no applicable method for 'unnest_tokens_' applied to an object of class "character"
由此:
我不确定错误告诉我什么,因为当我检查输入的类型时text_df
,我得到chr [1:6067]
但是,因为我正在查看文档的输入,所以我需要输入字符,所以如果它告诉不应输入字符,我不确定如何解决此错误。我应该将字符转换为其他字符吗?
谢谢,
* 更新 *
以下text_df
是创建方式:data.frame(textData['notes'])
的内容text_df
是:
和str(text_df)
'data.frame': 6067 obs. of 1 variable:
$ notes: chr "foo" "bar" "baz" ...
但是,当我现在使用使用数据框时,错误变为:
Input must be a character vector of any length or a list of character vectors, each of which has a length of 1.
r - 使用 tidytext 计算 R 中的词频时出错
我一直在尝试使用 tidytext 包计算词频。
但我一直收到此错误: UseMethod("as.quoted") 中的错误:没有适用于 'as.quoted' 的方法应用于类“函数”的对象
请帮忙!谢谢!
r - R 文本挖掘 n 克(二元)没有返回结果。有人有同样的经历吗?
我正在使用 tidytext 包进行 n 克文本挖掘。我尝试了 2 列文本,n 克(bigrams)函数对其中一个运行良好,但另一个返回 0 obs。来自同一资源的 2 列,因此没有格式差异,只是内容差异。有谁知道为什么?
代码:
result=unnest_tokens(table,bigrams,txt,token="ngrams",n=2)
r - 使用 tidytext 和 broom 但找不到更整洁的 LDA_VEM
tidytext 书中有一些示例,主题模型更整洁:
复制在此处也可见但在此实例library(tidytext)
中存在的错误。
下面是所有包的列表,它们对应的版本:
函数调用的输出sessionInfo()
:
r - tidytext、quanteda 和 tm 返回不同的 tf-idf 分数
我正在尝试处理 tf-idf 加权语料库(我希望 tf 是按文档而不是简单计数的比例)。我希望所有经典文本挖掘库都返回相同的值,但我得到不同的值。我的代码中是否有错误(例如,我是否需要转置一个对象?)或者 tf-idf 计数的默认参数是否因包而异?
r - 带有tidyverse包的R中的情感分析-找不到对象“情感”
我正在尝试重现这个情绪分析的例子:https ://www.kaggle.com/rtatman/tutorial-sentiment-analysis-in-r
我有一个“file.txt”,其中包含我要在“../input”文件夹中分析的文本。
library(tidyverse)
library(tidytext)
library(glue)
library(stringr)
library(dplyr)
require(plyr)
# get a list of the files in the input directory
files <- list.files("../input")
fileName <- glue("../input/", files[1], sep = "")
fileName <- trimws(fileName)
fileText <- glue(read_file(fileName))
fileText <- gsub("\\$", "", fileText)
tokens <- data_frame(text = fileText) %>% unnest_tokens(word, text)
但在这条线之后
我收到一条错误消息
计数错误(。,情绪):找不到对象“情绪”
昨天同样的代码运行良好,今天我得到了这个错误。看来问题是由plyr
包装引起的。plyr
之前加载时似乎工作正常dplyr
,但现在即使按该顺序加载也会出错。