R 从df创建包含文档名称的语料库

R 从df创建包含文档名称的语料库,r,quanteda,R,Quanteda,我正在使用readtext软件包将所有文本文件读入df df <- readtext(directory, "*.txt") 但现在这不再起作用了,语料库对象的“documents”-df只存储“text”-值,而不再存储doc\u id-值 如何将我的doc\u id返回到我的语料库对象中?这是因为我们在v1.2.0之前修复了一个。从data.frame构建语料库时,文档id需要一些字段,默认情况下这是readtextdoc\u id 如果您希望它也作为文档变量,可以这样做。首先,我从

我正在使用readtext软件包将所有文本文件读入df

df <- readtext(directory, "*.txt")
但现在这不再起作用了,语料库对象的“documents”-df只存储“text”-值,而不再存储
doc\u id
-值

如何将我的
doc\u id
返回到我的语料库对象中?

这是因为我们在v1.2.0之前修复了一个。从data.frame构建语料库时,文档id需要一些字段,默认情况下这是readtext
doc\u id

如果您希望它也作为文档变量,可以这样做。首先,我从readtext包的系统文件中读取了一些文本,这是一个可复制的示例

library("readtext")
library("quanteda")

packageVersion("readtext")
## [1] ‘0.50’
packageVersion("quanteda")
## [1] ‘1.2.0’

df <- readtext(paste0(DATA_DIR, "txt/EU_manifestos/*.txt"), encoding = "LATIN1")
df
## readtext object consisting of 17 documents and 0 docvars.
## # data.frame [17 × 2]
## doc_id                  text                
## <chr>                   <chr>               
## 1 EU_euro_2004_de_PSE.txt "\"PES · PSE \"..." 
## 2 EU_euro_2004_de_V.txt   "\"Gemeinsame\"..." 
## 3 EU_euro_2004_en_PSE.txt "\"PES · PSE \"..." 
## 4 EU_euro_2004_en_V.txt   "\"Manifesto\n\"..."
## 5 EU_euro_2004_es_PSE.txt "\"PES · PSE \"..." 
## 6 EU_euro_2004_es_V.txt   "\"Manifesto\n\"..."
library(“readtext”)
图书馆(“quanteda”)
packageVersion(“readtext”)
## [1] ‘0.50’
包装版本(“quanteda”)
## [1] ‘1.2.0’
df
library("readtext")
library("quanteda")

packageVersion("readtext")
## [1] ‘0.50’
packageVersion("quanteda")
## [1] ‘1.2.0’

df <- readtext(paste0(DATA_DIR, "txt/EU_manifestos/*.txt"), encoding = "LATIN1")
df
## readtext object consisting of 17 documents and 0 docvars.
## # data.frame [17 × 2]
## doc_id                  text                
## <chr>                   <chr>               
## 1 EU_euro_2004_de_PSE.txt "\"PES · PSE \"..." 
## 2 EU_euro_2004_de_V.txt   "\"Gemeinsame\"..." 
## 3 EU_euro_2004_en_PSE.txt "\"PES · PSE \"..." 
## 4 EU_euro_2004_en_V.txt   "\"Manifesto\n\"..."
## 5 EU_euro_2004_es_PSE.txt "\"PES · PSE \"..." 
## 6 EU_euro_2004_es_V.txt   "\"Manifesto\n\"..."
crp <- corpus(df)
crp
## data frame with 0 columns and 17 rows
docvars(crp, "doc_id") <- df$doc_id
head(docvars(crp))
##                                          doc_id
## EU_euro_2004_de_PSE.txt EU_euro_2004_de_PSE.txt
## EU_euro_2004_de_V.txt     EU_euro_2004_de_V.txt
## EU_euro_2004_en_PSE.txt EU_euro_2004_en_PSE.txt
## EU_euro_2004_en_V.txt     EU_euro_2004_en_V.txt
## EU_euro_2004_es_PSE.txt EU_euro_2004_es_PSE.txt
## EU_euro_2004_es_V.txt     EU_euro_2004_es_V.txt