将多个文本文件读入r以进行文本挖掘

将多个文本文件读入r以进行文本挖掘,r,text-mining,R,Text Mining,我有一批文本文件,需要读入r进行文本挖掘 到目前为止,我已经尝试使用qdap包中的read.table、read.line、lappy、mcsv_r,但没有效果。我试图编写一个循环来读取文件,但我必须指定文件名,它在每次迭代中都会更改 以下是我尝试过的: # Relative path points to the local folder folder.path="../data/InauguralSpeeches/" # get the list of file names speeches

我有一批文本文件,需要读入r进行文本挖掘

到目前为止,我已经尝试使用qdap包中的read.table、read.line、lappy、mcsv_r,但没有效果。我试图编写一个循环来读取文件,但我必须指定文件名,它在每次迭代中都会更改

以下是我尝试过的:

# Relative path points to the local folder
folder.path="../data/InauguralSpeeches/"

# get the list of file names
speeches=list.files(path = folder.path, pattern = "*.txt")

for(i in 1:length(speeches))
  {

    text_df <- do.call(rbind,lapply(speeches[i],read.csv))

}
#相对路径指向本地文件夹
folder.path=“../data/initialspeechs/”
#获取文件名列表
演讲=列表.文件(路径=folder.path,pattern=“*.txt”)
(一分之一:篇幅(发言))
{

text_df以下是将目录中的所有*.csv文件读取到单个data.frame的代码:

dir <- '~/Desktop/testcsv/'
files <- list.files(dir,pattern = '*.csv', full.names = TRUE)
data <- lapply(files, read.csv)
df <- do.call(rbind, data)

dir以下是将目录中的所有*.csv文件读取到单个data.frame的代码:

dir <- '~/Desktop/testcsv/'
files <- list.files(dir,pattern = '*.csv', full.names = TRUE)
data <- lapply(files, read.csv)
df <- do.call(rbind, data)

dir这里有一种方法

library(data.table)
setwd("C:/Users/Excel/Desktop/CSV Files/")

WD="C:/Users/Excel/Desktop/CSV Files/"
# read headers
data<-data.table(read.csv(text="CashFlow,Cusip,Period"))

csv.list<- list.files(WD)
k=1

for (i in csv.list){
  temp.data<-read.csv(i)
  data<-data.table(rbind(data,temp.data))

  if (k %% 100 == 0)
    print(k/length(csv.list))

  k<-k+1
}
库(data.table)
setwd(“C:/Users/Excel/Desktop/CSV Files/”)
WD=“C:/Users/Excel/Desktop/CSV文件/”
#读标题

数据这里有一种方法

library(data.table)
setwd("C:/Users/Excel/Desktop/CSV Files/")

WD="C:/Users/Excel/Desktop/CSV Files/"
# read headers
data<-data.table(read.csv(text="CashFlow,Cusip,Period"))

csv.list<- list.files(WD)
k=1

for (i in csv.list){
  temp.data<-read.csv(i)
  data<-data.table(rbind(data,temp.data))

  if (k %% 100 == 0)
    print(k/length(csv.list))

  k<-k+1
}
库(data.table)
setwd(“C:/Users/Excel/Desktop/CSV Files/”)
WD=“C:/Users/Excel/Desktop/CSV文件/”
#读标题

数据我经常遇到同样的问题。我维护的textreadr软件包旨在使读取.csv、.pdf、.doc和.docx文档以及这些文档的目录变得容易。它将减少您在以下方面所做的工作:

textreadr::read_dir("../data/InauguralSpeeches/")
你的例子是不可复制的,所以我在下面做(请让你的例子在将来可复制)

输出 下面的输出显示了TIBLE输出,其中每个文档都注册在
文档
列中。对于文档中的每一行,该文档都有一行。根据csv文件中的内容,这可能不够细粒度

##    document                                  content
## 1       0_9 Bromwell High is a cartoon comedy. It ra
## 2     00_00                                     test
## 3     00_00                                         
## 4     00_00                                  testing
## 5     00_00                                         
## 6     00_00                                   tester
## 7       1_7 If you like adult comedy cartoons, like 
## 8      10_9 I'm a male, not given to women's movies,
## 9      11_9 Liked Stanley & Iris very much. Acting w
## 10     12_9 Liked Stanley & Iris very much. Acting w
## ..      ...                                      ... 
## 141   mtcars "Ferrari Dino",19.7,6,145,175,3.62,2.77,
## 142   mtcars "Maserati Bora",15,8,301,335,3.54,3.57,1
## 143   mtcars "Volvo 142E",21.4,4,121,109,4.11,2.78,18

我经常遇到同样的问题。我维护的textreadr软件包旨在使阅读.csv、.pdf、.doc和.docx文档以及这些文档的目录变得容易。它将减少您在以下方面所做的工作:

textreadr::read_dir("../data/InauguralSpeeches/")
你的例子是不可复制的,所以我在下面做(请让你的例子在将来可复制)

输出 下面的输出显示了TIBLE输出,其中每个文档都注册在
文档
列中。对于文档中的每一行,该文档都有一行。根据csv文件中的内容,这可能不够细粒度

##    document                                  content
## 1       0_9 Bromwell High is a cartoon comedy. It ra
## 2     00_00                                     test
## 3     00_00                                         
## 4     00_00                                  testing
## 5     00_00                                         
## 6     00_00                                   tester
## 7       1_7 If you like adult comedy cartoons, like 
## 8      10_9 I'm a male, not given to women's movies,
## 9      11_9 Liked Stanley & Iris very much. Acting w
## 10     12_9 Liked Stanley & Iris very much. Acting w
## ..      ...                                      ... 
## 141   mtcars "Ferrari Dino",19.7,6,145,175,3.62,2.77,
## 142   mtcars "Maserati Bora",15,8,301,335,3.54,3.57,1
## 143   mtcars "Volvo 142E",21.4,4,121,109,4.11,2.78,18

显示您尝试的代码并准确描述其工作原理。您是否使用了
tm
包进行文本挖掘?您可以使用
DirSource()加载多个文件
函数。查看“显示到目前为止您尝试过的循环代码”。@MrFlick我可以通过语料库将文件加载到R中,但有没有办法将其加载到数据帧中?实际上,您已经走得很远了。您只是忘了在
语音
字符向量中包含相对路径,这就是它找不到文件的原因。谢谢@克丽丝:我想问题已经解决了。展示你尝试过的代码,并准确描述它是如何工作的。你有没有使用
tm
软件包进行文本挖掘?你可以使用
DirSource()加载多个文件
函数。查看“显示到目前为止您尝试过的循环代码”。@MrFlick我可以通过语料库将文件加载到R中,但有没有办法将其加载到数据帧中?实际上,您已经走得很远了。您只是忘了在
语音
字符向量中包含相对路径,这就是它找不到文件的原因。谢谢@克丽丝,我想问题已经解决了。