将多个.txt文件作为单个元素读入R Vector

usp*_*pow 0 text nlp r

我的桌面上有一个名为"project"的文件夹.在这个文件夹里面有多个.txt文件(例如1.txt,2.txt,3.txt等).有没有人知道一个解决方案,使我能够有一个向量,其中向量中的每个元素对应于文件的内容?

例如,如果1.txt包含"你喜欢苹果",2.txt包含"我喜欢梨",而3.txt包含"猫喜欢鱼"......我希望结果是一个长度的矢量3其中每个元素包含.txt文件中的整个文本.基本上(("我喜欢苹果"),("你喜欢梨子"),("猫喜欢鱼")).

我当前的部分解决方案可以按照我想要的方式读取一个文本文件,但是如何为dir中的每个.txt文件执行此操作并相应地存储它?

fileName <- '/Users/myname/Desktop/1.txt'
text <- readChar(fileName, file.info(fileName)$size)
Run Code Online (Sandbox Code Playgroud)

非常感谢!我在黑客马拉松中竞争,需要这个来创建一个tf-idf实现,向量中的每个元素都是一个文档.

akr*_*run 5

尝试:(如果所有文件都在工作目录中)

files <- list.files(pattern="^\\d+\\.txt")
files
#[1] "1.txt" "2.txt" "3.txt"

unname(sapply(files, readLines))
#[1] "You like apples" "I like pears"    "Cats like fish" 
Run Code Online (Sandbox Code Playgroud)

如果您有不同目录中的文件

fileDir <- "/home/akrunHome/TestN"
files <- list.files(fileDir, pattern="^\\d+\\.txt")
files1 <- paste(fileDir, files, sep="/") 
unname(sapply(files1, readLines))
#[1] "You like apples" "I like pears"    "Cats like fish" 
Run Code Online (Sandbox Code Playgroud)

基于@RomanLuštrik的评论,你可以这样做:

 paste(unname(sapply(files1, readLines)), collapse=", ")
 #[1] "You like apples, I like pears, Cats like fish"
Run Code Online (Sandbox Code Playgroud)

或许你需要

  paste(paste0("'", unname(sapply(files1, readLines)),"'"), collapse=", ")
 #[1] "'You like apples', 'I like pears', 'Cats like fish'"
Run Code Online (Sandbox Code Playgroud)