我有一個文本文件的目錄。我想將這些文本文件的內容逐行讀入R數據框。文本文件包含非結構化文本。期望的數據幀輸出是:將txt文件的目錄逐行讀入一個R數據框,並將文件名作爲一列
file; line
1.txt; "line 1 in 1.txt"
1.txt; "line 2 in 1.txt"
2.txt; "line 1 in 2.txt"
...
我已經寫下面的代碼,但它會導致錯誤。我也猜想有一個更直接的方法來做到這一點,例如readr
和dplyr
。
files <- list.files(path="./data", pattern = "*.txt", full.names = TRUE) # read data folder txt files
my_lines <-list() # create temp list for reading lines
df <- data_frame("file" = character(0), "line" = character(0))
for (file in files){
my_lines <- readLines(file) # read lines from file into a list
for (line in my_lines){
df$file<-file
df$fline<-line
}
}
這將有助於知道你得到哪些錯誤 –
@MarcoSandri:'替換有1行,數據有0' – textnet
你可以一次讀取整個文件,然後添加一個新的文件列。最後,你可以通過'rbind'或者'bind_rows'連接所有'data.frame's。 – mt1022