0

我正在尝试使用 Japanese tokenizer 标记一组推文RMeCab,特别是函数RMeCabDF(用于数据帧)。

该文档说明了以下用法:

RMeCabDF

描述

RMeCabDF 将数据帧作为第一个参数,并分析第二个参数指定的列。空白数据应替换为 NA。如果将 1 指定为第三个参数,则返回每个语素的基本形式。

用法

RMeCabDF(dataf, coln, mypref, dic = "", mecabrc = "", etc = "")

论据

dataf 数据帧

coln 包含日语句子的列号或名称

mypref 默认为 0,返回文本中出现的相同词素形式。如果指定了 1,则它们的基本形式是相反的。

dic 指定用户字典,ex ishida.dic

mecabrc 未实现(指定 mecab 资源文件)

mecab的其他选项

因此,在此之后,我使用以下代码来标记数据框中的列89trump_ja

trump_ja_tokens <- RMeCabDF(trump_ja, coln = 89)

这导致List of 1- 但如您所见,数据框有 989 行。

在此处输入图像描述

我的其他行去哪儿了?

我必须逐行标记吗?如果是这样,有没有办法自动化这个过程以避免输入 1000 行代码(或使用 Excel 生成 1000 行代码)?

4

1 回答 1

1

您可以按照该用户RMeCab的方式将标记器与 tidytext 一起使用。你可以这样设置:

df %>%
    unnest_tokens(word, text, token = RMeCab::RMeCabC)

df您的数据框在哪里,是您word要创建的新列,text是您已经拥有的包含要标记的文本的旧列。对于像这样的情况,token参数 inunnest_tokens()可以将函数作为参数。

于 2018-08-15T01:58:01.823 回答